我怎么知道我在linux“屏幕”里面运行?

前端之家收集整理的这篇文章主要介绍了我怎么知道我在linux“屏幕”里面运行?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
“屏幕”指的是 How to reconnect to a disconnected ssh session中提到的程序.这是一个很好的设施.

但我有一个问题,我真的很想知道.我如何知道自己是否在“屏幕”内运行?不同之处是:

>如果是,我知道我可以安全地关闭当前终端窗口,例如关闭PuTTY窗口,而不会丢失我的shell(Bash等)会话.
>如果不是,我知道在关闭终端窗口之前我必须处理任何待处理的工作.

更好,我希望在PS1提示符下显示此状态,以便我可以随时自动查看.

解决方法

(在StackOverflow上从“ How can I tell whether I’m in a screen?”上偷走并由用户 jho编写.P.S.您不能在StackExchange网站上投票支持复制.)

检查$STY.如果它为空,那么你就是一个“真正的”终端.如果它包含任何内容,那么它就是您所在屏幕的名称.

如果你不在屏幕上:

eric@dev ~ $echo $STY
eric@dev ~ $

如果你在屏幕上:

eric@dev ~ $echo $STY
2026.pts-0.ip-10-0-1-71

如果您使用tmux而不是屏幕,也请检查$TMUX.要将此添加到您的提示中,请将以下内容添加到〜/ .bashrc:

if [ -n "$STY" ]; then export PS1="(screen) $PS1"; fi
if [ -n "$TMUX" ]; then export PS1="(tmux) $PS1"; fi

猜你在找的Linux相关文章