默认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 

这样会

  1. 如果屏幕会话不存在,请创建它
  2. 如果会话已存在,则重新附加到会话。

在我看来,另一种选择是使用tmuxtmuxinator ,它提供了更清洁的体验。 如果您已经习惯了,可以设置tmux来使用屏幕式键绑定。 我这样说是因为我为其他用户运行tmux取得了比使用屏幕更好的成功。