遠隔地には変わり続ける自動生成ファイルがありますssh user@ip cat luckyNumbers
。
Today's lucky number are
1 2 3
asdsa@!#SAxAaas 21gv3sad ASD@!#
私の目標は
- 幸運な数字を
1 2 3
Luckynumbers.txtにリダイレクトし、 - 残りのファイルを自分のプログラムにパイプします。
decoder
- ファイル全体を保存したり、ファイルに対する2番目の要求を行わずにこれを実行したいと思います。
このようにデータストリームを分割することが可能かどうかはわかりません。
ベストアンサー1
以下は、他のすべての行をstdoutに送信しながら、stdinの行2を特定のファイルに書き込むいくつかの方法です。
sedを使用してください:
ssh remotehost cat luckynumbers |
sed -e '2 { w luckynumbers.txt
d
}' |
decoder
awkを使用してください:
ssh remotehost cat luckynumbers |
awk 'NR == 2 { print > "luckynumbers.txt" }
NR != 2 { print }' |
decoder
入力の最後の行が改行で終わらない場合、awkは改行を追加できます。