awk:パターンが見つからない場合は、ファイルの末尾にテキストを追加してください。

awk:パターンが見つからない場合は、ファイルの末尾にテキストを追加してください。

awkどうすれば下部にのみテキストを追加できますか?パターンが見つからない場合ファイルに?

これはうまくいきません:

awk '{if ($0 !~ /pattern/) {print}; END {print "someText"}}' file

ファイルは 1MB 未満に小さくなります。

ベストアンサー1

もう1つのawk方法は、大容量ファイルを処理するより速く、一度だけ終了することです。模様次の場合は、ファイルに何かを見つけて追加してください。模様見つかりませんでした。

awk '/pattern/{found=1; exit}; END{ if(!found) print "append" >>FILENAME }' infile

または以下を使用してくださいgrep

<infile grep -q pattern || echo 'appending...' >>infile

おすすめ記事