使用命令将屏幕会话的输入定向到会话内的特定窗口?

使用命令将屏幕会话的输入定向到会话内的特定窗口?

所以我有一个自动备份脚本,每小时备份服务器的重要文件。

它有很多像这样的行,将输入发送到游戏服务器控制台正在运行的屏幕会话,以在开始备份文件时进行广播:

screen -x $SCREENNAME -X stuff "`printf "say Backing up world: \'$WORLD\'\r"`

它工作正常,除非我在屏幕会话中使用不同的窗口。

当我在同一屏幕会话中使用不同的窗口时,脚本尝试say Backing up world在我正在使用的 bash 终端中执行,但这不起作用,并且没有消息发送到游戏控制台。

有什么方法可以将输出定向到 seesion 内的特定屏幕。我的游戏机始终位于第一个屏幕上,因此屏幕 0。

如果相关的话我使用的是 CentOS 7

答案1

您可以通过指定 -p 来预选择一个窗口,0 是第一个窗口,1 是第二个窗口,依此类推...

屏幕 -x $SCREENNAME -p 0 -X 东西“ printf "say Backing up world: \'$WORLD\'\r"

相关内容