Answers:
屏幕提供了一些环境变量(来自screen
(1)联机帮助页):
STY Alternate socket name.
WINDOW Window number of a window (at creation time).
“创建时”表示如果您重新编号窗口(使用屏幕的number
命令),则不会告知外壳更改,并且$ WINDOW仍与第一个窗口号相同。
您可以使用类似:
PS1='\u@\h(${STY}:${WINDOW}):\w$ '
screen -xr 2466 -X windows
。
Ctrl-a A
?
screen
已经使用-Q
(query)选项编译了GNU ,那么您可以运行某些命令,例如title
和windows
,并且将数据显示到stdout,但是没有尾随换行符。
我用这个:
(`echo ${STY} | sed -e 's/[0-9]*\.//g'`:${WINDOW}:`screen -Q title`)
从${STY}
包含窗口号(如“创建时”所述)中删除进程号,包括
窗口标题(由返回screen -Q title
)
笔记:
screen -Q
等待返回击键${STY#[0-9]*.}
避免需要通过管道sed
。