码迷,mamicode.com
首页 > 其他好文 > 详细

004-sed 命令使用

时间:2019-06-05 22:10:47      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:inux   cat   cgroup   lin   选项   修改   结合   需要   多个   

sed 命令使用

主要作用是用来将数据进行选取,替换,删除,新增的命令,与vim类似


选项:
-n : 只显示经过sed处理的数据,打印到屏幕
-e:  运行多个条件同时运行
-i: 直接修改文件


-p: 打印

例子:

[root@zabbix lianxi]# cat student.txt 
ID    Name    PHP    Linux    MySQL    Average
1    Liming    82    95    86    87.66
2    Sc    74    96    87    85.66
3    Gao    99    83    93    91.66

#####################显示第二行数据################
[root@zabbix lianxi]# sed 2p student.txt 
ID    Name    PHP    Linux    MySQL    Average
1    Liming    82    95    86    87.66
1    Liming    82    95    86    87.66
2    Sc    74    96    87    85.66
3    Gao    99    83    93    91.66

只显示第2行,需要-p与-n 结合使用
[root@zabbix lianxi]# sed -n 2p student.txt 
1    Liming    82    95    86    87.66



[root@zabbix lianxi]# df -h 
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   17G  1.6G   16G    9% /
devtmpfs                 1.9G     0  1.9G    0% /dev
tmpfs                    1.9G     0  1.9G    0% /dev/shm
tmpfs                    1.9G   12M  1.9G    1% /run
tmpfs                    1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/sda1               1014M  189M  826M   19% /boot
tmpfs                    378M     0  378M    0% /run/user/0
[root@zabbix lianxi]# df -h | sed -n 2p
/dev/mapper/centos-root   17G  1.6G   16G    9% /

#########删除2到4行,输出到屏幕
d

[root@zabbix lianxi]# sed 2,4d student.txt 
ID    Name    PHP    Linux    MySQL    Average



#############在第二行前插入两行数据############
i

[root@zabbix lianxi]# sed 2i 你好 \
> 哈哈 student.txt
ID    Name    PHP    Linux    MySQL    Average
你好 
哈哈
1    Liming    82    95    86    87.66
2    Sc    74    96    87    85.66
3    Gao    99    83    93    91.66



##########行替换############
将第二行替换
c

[root@zabbix lianxi]# sed 2c 查无此人 student.txt 
ID    Name    PHP    Linux    MySQL    Average
查无此人
2    Sc    74    96    87    85.66
3    Gao    99    83    93    91.66


#######字符串替换#######
s

[root@zabbix lianxi]# sed 4s/99/55/g student.txt 
ID    Name    PHP    Linux    MySQL    Average
1    Liming    82    95    86    87.66
2    Sc    74    96    87    85.66
3    Gao    55    83    93    91.66
将第4行的99替换成55



[root@zabbix lianxi]# sed -i 4s/99/55/g student.txt 
[root@zabbix lianxi]# cat student.txt 
ID    Name    PHP    Linux    MySQL    Average
1    Liming    82    95    86    87.66
2    Sc    74    96    87    85.66
3    Gao    55    83    93    91.66



#####同时把Liing和Gao替换成空
[root@zabbix lianxi]# sed -e s/Liming//g ; s/Gao//g student.txt 
ID    Name    PHP    Linux    MySQL    Average
1        82    95    86    87.66
2    Sc    74    96    87    85.66
3        55    83    93    91.66

 

004-sed 命令使用

标签:inux   cat   cgroup   lin   选项   修改   结合   需要   多个   

原文地址:https://www.cnblogs.com/xuefy/p/10981875.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!