我可以用 grep 替换某个单词吗?

我可以用 grep 替换某个单词吗?

我知道我可以使用 sed,但我试图弄清楚是否可以使用 grep 做同样的事情。

我的号码是 36.508,我想用 36.62 替换它。

grep -v "^36.508" file3.1 | echo "36.62" 

它仍然打印出 36.508。使用 grep 将其从 36.508 更改为 36.62 的最佳选择是什么?

答案1

不,您不能用以下命令替换单词grep: grep 查找与您给出的表达式相匹配的行并将其打印出来(或者使用 with-v打印出这些行不是匹配表达式)。

如果你想更换比赛,那么你需要类似的东西sed

sed 's/36\.508/36.62/' file3.1

或者如果您想将其保存到文件中:

sed 's/36\.508/36.62/' file3.1 > file3.1.modified

或者如果你真的想修改输入文件(你最好小心这一点):

sed -i 's/36\.508/36.62/' file3.1

我是否提到过您真的要小心最后一张表格?

相关内容