linux下如何替换文件中每一行指定位置字符串
发布网友
发布时间:2022-04-20 23:12
我来回答
共1个回答
热心网友
时间:2022-05-26 07:10
我这里使用的是代码截取的方式来输出的,既然你要删除的是第五个到第十个字符,那么我就取前四个,以及第10个以后的字符,然后再中间加上六个*号,就能拼接出所需要的字符串。代码如下:
for line in $(cat test.txt);
do
echo "${line:0:4}******${line:11}"
done
第一个变量${line:0:4}表示从一行第0个开始取,取4个,中间加上6个星号,第二个${line:11}变量表示从第11个开始取,一直取到最后一位。这样拼接起来就是你需要的内容了,如果想把这些内容重新输入到文件中,加上一个重定向就可以了,不知道我说清楚没有,希望可以帮助到你。追问
我这个后边还有好多数据,想达到的效果如图所示,刚用您的方法,对于前边没有空格的适用,这个样子的乱了,请赐教