linux sed命令替换特定字符之后的字符

linux sed命令替换特定字符之后的字符,第1张

1、首先进入到Linux系统,分别创建两个目录vim1、vim2。

2、分别在vim1、vim2文件夹下创建两个测试文件file1.c、file2.c。

3、然后在file1.c中添加,如下内容

4、在file2.c中添加如下内容,接下来将要批量将这两个文件中的len替换为size。

5、然后执行如下sed -i "s/len/size/g" `grep len -rl ./`。

6、执行上述命令后,分别再次打开上面新建立的两个文件,可以看到len已经被批量替换为了size。

单独sed我也没搞清楚

awk和sed结合很好实现

保存原来文件假设为abc.txt

for i in `awk '/AAAB/{getline vargetline var2print var2}' abc.txt`do sed -i "s/^"$i"/1234&/" abc.txt done

试试

最后还是想用简单的脚本解决,发现使用 sed 命令可以方便得在文件每一行后添加一个字符。首先看一下 sed 命令。

sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间” (pattern space) ,接着用 sed 命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。 Sed 主要用来自动编辑一个或多个文件;简化对文件的反复 *** 作;编写转换程序等。

假设处理的文本为 test.file ,在每行的头添加字符,比如 HEAD ,命令如下:

在每行的行尾添加字符,比如 TAIL ,命令如下:

几点说明:

这样就处理完了!总之恰当使用sed命令是可以避免来回打开文件造成的时间浪费,可以使用sed命令在linux脚本中做一些更好玩的事情。希望这篇文章可以给你一些帮助~


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11606846.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存