Scripting

將使用命令對螢幕會話進行的輸入定向到會話內的特定視窗?

  • April 1, 2018

所以我有一個自動備份腳本每小時備份伺服器的重要文件。

它有許多這樣的行,將輸入發送到遊戲伺服器控制台正在執行的螢幕會話,以便在它開始備份文件時進行廣播:

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

它工作正常,除非我在螢幕會話中使用不同的視窗。

當我在同一個螢幕會話中使用不同的視窗時,腳本會嘗試say Backing up world在我正在使用的 bash 終端中執行,這不起作用,並且沒有消息發送到遊戲控制台。

有沒有辦法將輸出定向到視野內的特定螢幕。我的遊戲機總是在第一個螢幕上,所以螢幕為 0。

如果相關的話,我在 CentOS 7 上

您可以通過指定 -p 預選一個視窗,0 是第一個視窗,1 是第二個等等…

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

引用自:https://unix.stackexchange.com/questions/434851