首页 > 其他 > 详细

004-sed 命令使用

时间:2019-06-05 21:59:12      阅读:74      评论:0      收藏:0      [点我收藏+]
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 命令使用

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!