1つ以上の行を含むことができるファイルがあります。
oracle1.txt
oracle2.txt
oracle3.txt
AWKを使用して表示する最後の行の後に\ nを追加する方法
oracle1.txt
oracle2.txt
oracle3.txt\n
私はそれを試しましたが、echo -e "\n" >> manifest.txt
ファイルの末尾に\ nの代わりに-eaを付けました。私は何が間違っていましたか?
ベストアンサー1
コメントですでに述べたように、echo >> manifest.txt
これはほとんどのシェルで機能し、echo '' >> manifest.txt
シェルがわからない場合はより安全になる可能性があります。
本当にこれを行うには、次の規則awk
を使用できますEND
(説明にも記載されています)awk 'END{printf "\n"}' >> manifest.txt
。
printf
代わりに&を使用するprint
か、次をEND
使用することもできますBEGIN
。awk 'BEGIN{print ""}' >> manifest.txt
manifest.txt
入力として使用awk
し、出力として使用したくない場合は(awk
同じファイルを読み書きできません)、単純なことawk 1 manifest.txt
が可能です(少なくともon GNU awk
、そうでない場合はawk '1;END{print ""} manifest.txt
トリックを実行する必要があります)。入力が次のように分かれているからです。記録頼る記録区切り記号 RS
(デフォルトは\n
)1
で、常にtrueと評価されるため、デフォルト値は行動({print}
)はすべての行で実行されます。print
とprint $0
同じでprintf $0 ORS
、ORS
はい出力レコード区切り記号\n
最後に、デフォルトは.soです。記録入力で終わらない内容は\n
出力でも続きます。\n