Gnu-Screen
使用螢幕分割終端
在
bash
腳本中,我想向使用者顯示一個帶有 的文件less
,但我不想less
佔用整個終端:當使用者使用 瀏覽文件時,我需要在終端中保持一些資訊可見less
。我用Google搜尋
terminal split linux
,所有結果都指向該screen
命令。經過幾個小時的試驗結束錯誤,我相信我已經想出了一個主要工作的解決方案。我創建了一個
screen.rc
文件,其中包含:split screen 1 less /etc/passwd focus down resize 10 screen 2 exec !.. echo Informations area focus up
現在,在我的
bash
腳本中,我可以執行screen -c screen.rc
它創建了一個拆分終端,
less /etc/passwd
在頂部區域和Information area
底部區域具有輸出,並且頂部區域正在接收使用者輸入,這正是預期的行為。幾乎完美,除非使用者點擊q
終止less
,screen
否則不會終止,因為底部區域仍有一個正在執行的外殼。使用者現在需要關注底部區域(CTRL+a TAB)並按 Ctrl+d 來終止正在執行的bash
.所以退出我的自定義
less
文件查看器的順序現在變成q
CTRL+a
TAB
CTRL+d
了:相當多的擊鍵只是為了退出文本文件查看器……當 top region命令退出時,如何
screen
立即終止?less
發送
quit
命令將告訴螢幕退出,因此將less
命令替換為:screen 1 sh -c 'less /etc/passwd ; screen -S "${STY}" -X quit'
或類似的東西。