Gnu-Screen
如何重新連接到“螢幕”會話或啟動新命令
自從我開始使用
screen
啟動文本模式(控制台)電子郵件客戶端(即alpine
)以來,我從未因網路斷開而失去部分書面電子郵件。很有用。但是現在啟動電子郵件客戶端有點涉及:
- 檢查是否有舊會話
screen -list
- 根據上一步:
- 如果有,請重新連接
screen -U -r <number>
- 如果沒有,請啟動電子郵件客戶端
screen -U alpine
如何簡化這些步驟,以便我只能執行簡單命令(簡單腳本),即
start_or_reconnect alpine
?我們可以假設如果有多個活動會話是錯誤的,或者只使用第一個……
使用顯式會話名稱(
-S
選項),並用於-RR
重新附加到現有會話或在沒有會話時創建一個。alias m='screen -S alpine -d -RR alpine'
快速而愚蠢:
#!/bin/sh ARG=`screen -list | grep Detached | awk '{print $1}'` if [ -z "$ARG" ]; then screen -U alpine else screen -U -r $ARG fi