默认GNU屏幕“屏幕”
正如标题所说,我想在我的无头盒子上设置GNU屏幕,这样当它启动时,一些屏幕已经运行。
我的.bashrc
文件在第一次使用screen -xRR
登录时运行屏幕,我希望htop
和各种日志自动打开。
是否也可以同时为屏幕分配标题?
您可以在屏幕配置文件~/.screenrc
定义默认窗口。
窗口标题可以使用-t
选项内联设置,但必须在启动每个窗口之前设置工作目录。 例如,在您的情况下,您可能包括以下内容:
〜/ .screenrc
# ... chdir ~ screen -t "Htop" htop chdir /var/log screen -t "System log" tail -F syslog screen -t "Mail log" tail -F mail.log chdir ~ screen # Extra Bash window for running commands # ...
请注意,此处的screen
不是您运行的screen
命令,而是内部screen
命令。 有关详细信息,请参阅man screen
,自定义部分或GNU手册 。
您可以利用-S
标志,并提供您想要给屏幕的唯一名称。
screen -S MyTitleHere
您还可以使用-c
标志加载配置文件。
screen -S foo -c /home/user/.screenrc.bar
您可以尝试以下方法:
su -c "screen -dm -S $TITLE 2>&1 1>/dev/null" $USER
并将其放在/etc/rc.local
,这会导致在为特定用户启动时创建该屏幕。
一旦你设置了配置( .rc
)文件,你可能想要运行以下内容:
screen -dURS $TITLE -c /path/to/.screenrc.bar
这样会
- 如果屏幕会话不存在,请创建它
- 如果会话已存在,则重新附加到会话。
在我看来,另一种选择是使用tmux
和tmuxinator
,它提供了更清洁的体验。 如果您已经习惯了,可以设置tmux
来使用屏幕式键绑定。 我这样说是因为我为其他用户运行tmux
取得了比使用屏幕更好的成功。