“屏幕”指的是
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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。