簡體   English   中英

sed命令插入文本-bash

[英]sed command inserting text - bash

我正在探索sed功能

我這里有一個簡單的文本文件,如下所示

ID,水果名稱和數量。 現在我想在每個水果的數量后面分別添加水果的數量

fruit.txt

1,apple
2,banana

如何使它變成這樣。

預期產量

sed命令的第一個輸入

我的textfile(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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM