1

私はsed関数を調べています

ここにあるのは、以下に示す単純なテキスト ファイルです。

ID、果物の名前、数量。今、それぞれの果物の量の後ろに果物の量を追加したい

フルーツ.txt

1,apple
2,banana

こうなる方法。

期待される出力

sed コマンドの最初の入力

私のテキストファイル(fruit.txt)は次のようになります

1,apple,50
2,banana,40
4

2 に答える 2

1

次のように 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/'
于 2013-10-28T14:19:01.843 に答える
1

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
于 2013-10-28T14:19:28.083 に答える