linux中sed在指定字符前后添加内容
2023-09-11 14:17:16 时间
假设文档内容如下:
[root@localhost ~]# cat /tmp/input.txt null 000011112222 test
要求:在1111之前添加AAA,方法如下:
sed -i 's/指定的字符/要插入的字符&/' 文件
[root@localhost ~]# sed -i 's/1111/AAA&/' /tmp/input.txt [root@localhost ~]# cat /tmp/input.txt null 0000AAA11112222 test
要求:在1111之后添加BBB,方法如下:
sed -i 's/指定的字符/&要插入的字符/' 文件
[root@localhost ~]# sed -i 's/1111/&BBB/' /tmp/input.txt [root@localhost ~]# cat /tmp/input.txt null 0000AAA1111BBB2222 test
要求:(1) 删除所有空行;(2) 一行中,如果包含"1111",则在"1111"前面插入"AAA",在"11111"后面插入"BBB"
[root@localhost ~]# sed '/^$/d;s/1111/AAA&/;s/1111/&BBB/' /tmp/input.txt null 0000BBB1111AAA2222 test
要求:在每行的头添加字符,比如"HEAD",命令如下:
[root@localhost ~]# sed -i 's/^/HEAD&/' /tmp/input.txt [root@localhost ~]# cat /tmp/input.txt HEADnull HEAD000011112222 HEAD HEADtest
要求:在每行的尾部添加字符,比如"tail",命令如下:
[root@localhost ~]# sed -i 's/$/&tail/' /tmp/input.txt [root@localhost ~]# cat /tmp/input.txt HEADnulltail HEAD000011112222tail HEADtail HEADtesttail
说明:
1."^"代表行首,"$"代表行尾
2.'s/$/&tail/g'中的字符g代表每行出现的字符全部替换,如果想在特定字符处添加,g就有用了,否则只会替换每行第一个,而不继续往后找。
相关文章
- linux驱动开发--字符设备:自旋锁
- linux驱动开发--字符设备:添加文件指针偏移的功能
- linux驱动开发--字符设备:静态分配设备号
- linux下so获得自己文件位置的路径
- Tcp syn portscan code in C with Linux sockets
- Linux基础之windows linux双系统
- linux的tar命令详情;linux多个文件压缩打包到一个压缩文件
- [手游项目2]-11-linux下浮点数和整数相乘bug
- linux stat系统调用,获取文件信息。
- Linux centos7 计划任务与日志的管理
- linux中的"空白字符"
- L84.linux命令每日一练 -- 第11章 Linux系统管理命令 -- rpm和yum
- L82.linux命令每日一练 -- 第11章 Linux系统管理命令 -- dmidecode和lspci
- L73.linux命令每日一练 -- 第十章 Linux网络管理命令 -- dig和host
- L45.linux命令每日一练 -- 第七章 Linux用户管理及用户信息查询命令 -- sudo和id
- L41.linux命令每日一练 -- 第七章 Linux用户管理及用户信息查询命令 -- userdel和groupadd
- linux服务篇-PXE+Kickstart
- conda安装r Linux系统中 linux中安装r
- Linux sudo权限绕过漏洞详解
- Linux【实操篇】—— 组管理、权限管理、定时任务调度
- Linux清除十字符病毒
- 02 从头开始atac项目 ubuntu20 install r4.2 Linux系统环境配置 服务器版本的rstudio r install in linux /ubuntu/centos