004-sed 命令使用
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