2017-05-17 3 views
0

すばやく別のgnu画面のセッション(ウィンドウではない)を切り替える必要があります。今すぐ私はscreen -dと1つのセッションから切り離し、screen -r <sessionname>と次のものに再接続することができますが、これを1つのコマンドで行う方法はありませんか? screen -d && screen -r <sessionname>のようなもの?gnuの画面をすばやく切り替える

ありがとうございます!

答えて

1

これは、ユーティリティスクリプトを経由して行うのに十分に簡単です。使用例:

There are screens on: 
    43094.27 (Detached) 
    47415.12 (Attached) 
    54922.31 (Detached) 
3 Sockets in /var/folders/r5/7_prvssx301dyz4jz2pbky5w0000gn/T/.screen. 

[y/n] switch to 54922.31? 

タイプyそれをスキップし、プロンプトで指定された画面、または何か他のものを入力します。画面を離れるとき(^a^d^dexitなど)、後続の画面のプロンプトが表示されます。

0

残念ながら、残念ながらGNU画面にそのようなことはありません。 cycle-screenとしてあなたのパスにその保存

#!/usr/bin/env bash 

set -eu 
set -o pipefail 
unset CDPATH 
: "${BASH:?bash shell is required}" 


screen -ls || true 

for s in $(screen -ls | tail -n +2 | head -n -2 | sort -R | cut -f2) 
do 
    read -n 1 -s -r -p '[y/n] switch to '"$s"'?' REPLY 
    if [[ "$REPLY" == "y" ]] 
     then 
      screen -DR "$s" 
     else echo 
    fi 
done 

とそれを実行可能にします。

関連する問題