获取父 gnu 屏幕的会话名称

获取父 gnu 屏幕的会话名称

我知道可以使用环境变量访问当前会话名称$STY,有没有办法在嵌套屏幕的情况下获取父屏幕会话的会话名称?

答案1

我不相信这是可能的;这$STY确实是获取此信息的唯一地方,旧值被嵌套屏幕屏蔽了。您可以将其重命名screenscreen-real并将其替换为执行如下操作的 shell 脚本:

#!/bin/sh

if [ "$STY" ]; then
    export PARENT_STY=$STY
fi
exec $0-real "$@"

这将使您能够访问嵌套屏幕内的 $PARENT_STY,但它仅适用于单层嵌套。如果您真的想要,您可以变得更加复杂(例如,将其视为PARENT_STY列表并附加值),但这似乎不值得付出努力。

相关内容