首页 > 解决方案 > 如果它们在文件中,如何替换字符串

问题描述

我试过这个命令:

awk 'sub(/S/,"5")' primare.txt > primaro.txt

但它primaro.txt是空的。

S在 primare.txt 中可能会丢失。
如果没有,S我想打印与primare.txt.

编辑

以及如何用空来替换空间?

awk 'sub(/ /,"") 1' parametrx10.txt

awk '{sub(/ /,"");print}' parametrx10.txt

这些只删除了一个空格:-8.3 7 6 0 4 O>-8.37 6 0 4 O

标签: awk

解决方案


像这样怎么样:

awk 'sub(/S/,"5") 1' primare.txt

试试看,如果没问题,然后> primaro.txt自己添加部分。
另外,也许您需要的是gsub而不是sub.

但是,我建议你使用这个东西sed

sed 's|S|5|' primare.txt

使用-iswitch 来更改文件(最好先备份)。
更改为s|S|5|g替换所有事件。

替换空格:

awk 'gsub(/[[:space:]]+/,"") 1' primare.txt

推荐阅读