私はsed関数を調べています
ここにあるのは、以下に示す単純なテキスト ファイルです。
ID、果物の名前、数量。今、それぞれの果物の量の後ろに果物の量を追加したい
フルーツ.txt
1,apple
2,banana
こうなる方法。
期待される出力
sed コマンドの最初の入力
私のテキストファイル(fruit.txt)は次のようになります
1,apple,50
2,banana,40
次のように sed を使用します。
sed -i -r 's/(apple)(,[0-9]*)?$/\1,10/'
sed -i -r 's/(apple)(,[0-9]*)?$/\1,20/'
sed -i -r 's/(apple)(,[0-9]*)?$/\1,30/'
awk を使用します。
awk -F, -v OFS="," '/apple/{$3="whatever"}7' file
ただし、gnu awk 4.1 がない場合は、次のようにしてファイルに書き戻す必要があります。
awk -F, -v OFS="," '/apple/{$3="whatever"}7' file >~/foo.tmp && mv ~/foo.tmp file