分割出力をリダイレクトする

分割出力をリダイレクトする

gunzipパイプを使用して gz ファイルを分割しましたsplit:

time gunzip -c file.gz | split -l 500 -d -a 4 - pref_

次のファイルが生成されます。

pref_0000 
pref_0001

これらのファイルをパイプして再度 zip 圧縮したいと思います。次のことを試しました:

gunzip -c file.gz | split -l 500 -d -a 4 - pref_ | echo "file produced:" -
# Nothing

gunzip -c file.gz | split -l 500 -d -a 4 - pref_ | echo -
gunzip -c file.gz | split -l 500 -d -a 4 - pref_ | echo

これらは機能しません。split コマンドから出力を取得するにはどうすればよいでしょうか? 生成されたファイル名を取得することを期待しています。

答え1

あなたは- フィルター各分割ファイルでsplit呼び出すオプションzip

gunzip -c file.gz | split -l 500 -d -a 4 - pref_ --filter='zip $FILE'

関連情報