我经常在一个屏幕内打开 5 个以上的屏幕来监控服务器,系统重启后必须重新设置它们,这有点烦人。通常有一个 top 进程和几个 tail 进程用于查看日志文件。
有没有办法让屏幕自动打开多个屏幕并在每个屏幕执行某些命令?
答案1
是的,您可以将其放入您的 screenrc 中,例如。
screen -t Code 0
screen -t Chat 1 irssi
screen -t Shell 2
screen -t Remote 3 ssh user@host
screen -t screen4 4
答案2
您可以将命令放在文本文件中,然后将该文本文件指定为您的 screenrc,screen 仍将继承 /etc 中系统 screenrc 文件的条目。文本文件可能如下所示:
zombie qr
screen -t sshToServer1 ssh Server1
screen -t logTail tail -f /var/log/foo
语法是:
screen -t title <optional window number> command commandArguments
僵尸 qr 会使你关闭该窗口时,可以按 r 键将其复活。要指定上述文本文件:
screen -c textfile
如果您想命名屏幕会话,并且如果已经有一个同名的分离会话则重新连接该名称而不是启动一个新会话,请使用-R:
screen -R myScreenSession -c textfile
这样,您可以为不同的屏幕会话保存几个不同的文本文件。