バッファのスクリーンコマンド

バッファのスクリーンコマンド

ファイルの内容を貼り付けバッファに読み込み、画面に標準出力したいです。次のようにしました:

screen -X readbuf /home/nitro/file|screen -X writebuf|cat /tmp/screen-exchange

しかし、catコマンドは、readbuf コマンドの以前の結果を含む画面交換ファイルを表示しました。これらのコマンドを個別に実行すると、すべてが正しくなり、変更された画面交換ファイルが得られます。

readbuf、writebuf、cat の 3 つのコマンドを一度に実行するにはどうすればよいですか?

答え1

これらのコマンド:

screen -X readbuf /home/nitro/file
screen -X writebuf
cat /tmp/screen-exchange

パイプの一部として動作しませんが、複合コマンドはそれらをパイプの一部として扱おうとします。つまり、各ステップは前のステップの標準出力を読み込まないので、次のように入力した場合よりも因果関係が少なくなります。

screen -X readbuf /home/nitro/file; screen -X writebuf; cat /tmp/screen-exchange

または

screen -X readbuf /home/nitro/file && screen -X writebuf && cat /tmp/screen-exchange

関連情報