我使用屏幕运行很多应用程序的不同实例,我命名会议“APP1”,“APP 2”等
如何使用确切的会话名称进入屏幕?
的问题是,如果我有一个名为“app10”屏幕在一个名为“APP1”开始后,当我输入
screen -r app1
我得到重视的app10屏幕,因为它创造了“匹配”的名字APP1的屏幕。
是否有可能摆脱名称匹配并使用确切名称?
由于技术原因,我不想将app1更改为app01。它的目录名称中使用,自动化等
我使用屏幕运行很多应用程序的不同实例,我命名会议“APP1”,“APP 2”等
如何使用确切的会话名称进入屏幕?
的问题是,如果我有一个名为“app10”屏幕在一个名为“APP1”开始后,当我输入
screen -r app1
我得到重视的app10屏幕,因为它创造了“匹配”的名字APP1的屏幕。
是否有可能摆脱名称匹配并使用确切名称?
由于技术原因,我不想将app1更改为app01。它的目录名称中使用,自动化等
正如您正确指出的那样,屏幕使用参数值作为前缀。
长替代方法是键入:
screen -r $(basename /var/run/screen/S-$USER/*.app1}
(假设你的插座是否是在Debian系统默认在/ var /运行/屏幕目录)
您可以创建一个在.bashrc
文件
function mscreen() {
screen -r $(basename /var/run/screen/S-$USER/*$1)
}
这让你输入
相当于bash函数mscreen app1
恢复会话app1
而不是app10
可以使用pid
前缀,目的:
man screen
-r [pid.tty.host] -r sessionowner/[pid.tty。主机] 恢复分离的屏幕会话。除了[pid。] tty.host的可选 前缀可能需要 以区分多个分离的屏幕会话之外,没有其他选项可以指定(除了与-d/-D的组合)。第二种形式用于连接到以多用户模式运行的另一用户屏幕 会话。这表明屏幕应该在另一个用户的目录中查找会话。这需要setuid-root。
它像一个魅力,非常感谢! 结果如下:http://i.rems19.fr/6e629 – Rems19