私は3つのファイルを取得し
、各ファイルの後にcat
改行を挿入しようとしています。次のようなものを使用することを考えました:\n
cat f1 f2 f3|tr "\EOF" "\n"
成功せずに。
それを達成する最も簡単な方法は何ですか?
cat f1 <(echo) f2 <(echo) f3 <(echo)
また
perl -pe 'eof&&s/$/\n/' a b c
EOF
は文字ではなく、CTRL-Dでさえありません。これは、インタラクティブ入力でEOFを示すための通常の端末方法です。したがって、文字を変換するためのツールを使用して、何らかの方法で文字を変更することはできません。
この単純なケースの場合、最も簡単な方法は、単一でそれを実行しようとすることについて心配するのをやめることですcat
:-)
cat f1; echo; cat f2; echo; cat f3
うまくトリックを行います。より多くのファイルはスクリプトに値するかもしれませんが、この小さなケースの必要性はわかりません。
これらすべてのストリームを組み合わせてさらに処理する場合は、サブシェルで実行するだけです。
( cat f1; echo; cat f2; echo; cat f3 ) | some_process
私は同様の問題を抱えていました。私の状況は次のとおりでした。
grep "" file1 file2 file3 | awk -F ':' '{print $2}'
これを試して:
find f1 f2 f3 | xargs cat