誤って1000以上の画面を作成しました。 1つの命令でそれらをすべて殺す方法は? (または複数)
答え1
あなたはそれを使用することができます:
pkill screen
または
killall screen
OSXでは、このプロセスをSCREEN(すべて大文字)と呼びます。したがって、以下を使用してください。
pkill SCREEN
または
killall SCREEN
答え2
画面が停止したら、以下を使用してください。
screen -wipe
答え3
最近awkに慣れて、私はこれを一緒に使用し、その目的を達成しました。わかりやすいので投稿します。
screen -ls | grep '(Detached)' | awk 'sys {screen -S $1 -X quit}'
現在の画面がすべて一覧表示されますscreen -ls
。
grep 'pattern'
一致するすべての行をフィルタリングします。その後、すべての個々の画面のハンドルを取得し、awkが選択した最初の引数を参照してawk sys {command}
コマンドを一緒にコピーして貼り付け、を使用して実行できますsys
。$1
最後に終了コマンドを実行しますscreen -X quit
。
答え4
for scr in $(screen -ls | awk '{print $1}'); do screen -S $scr -X kill; done