命令sed是一个管道命令,也是用来接收标准输入,也是对数据进行,替换,删除,新增,选取特定功能。
1.sed 的删除行
比如删除第一行到第三行如下:
命令:ifconfig | sed ‘1,3d’
ifconfig | sed '1,3d'
删除后的结果如下:
2.sed添加行。
比如在第三行添加hello
命令:ifconfig | sed ‘3a hello’
ifconfig | sed '3a hello'
添加结果如下:
3.sed的整行替换。
比如替换3~5行为hello
命令:ifconfig | sed ‘3,5c hello’
ifconfig | sed '3,5c hello'
运行结果如下:
4.替换匹配的字符串并且替换成指定的文字。
比如将 ifconfig 中的所有RX,和TX 替换成AA
命令:ifconfig | sed ‘s/[RT]X/AA/’
ifconfig | sed 's/[RT]X/AA/'
5.使用sed和grep提取ip地址。
使用命令:ifconfig查看ip地址。
ifconfig
使用命令 ifconfig | grep ‘inet’ 提取所有有inet字符串的行.
ifconfig | grep 'inet'
使用命令:ifconfig | grep ‘inet’ | grep ‘[0-9$]’ 提取以数字结尾的行。
ifconfig | grep 'inet' | grep '[0-9$]'
ifconfig | grep 'inet' | grep '[0-9$]' | grep 'broadcast' | sed '/s *//'
使用命令:ifconfig | grep ‘inet’ | grep ‘[0-9$]’ | grep ‘broadcast’ 匹配其中有broadcast的一行。
ifconfig | grep 'inet' | grep '[0-9$]' | grep 'broadcast'
使用命令:ifconfig | grep ‘inet’ | grep ‘[0-9$]’ | grep ‘broadcast’ | sed ‘/s *//’ 替换前方的空格。
ifconfig | grep 'inet' | grep '[0-9$]' | grep 'broadcast' | sed '/s *//'
使用命令:ifconfig | grep ‘inet’ | grep ‘[0-9$]’ | grep ‘broadcast’ | sed ‘/s *//’ 替换netmask后面的字符。
ifconfig | grep 'inet' | grep '[0-9$]' | grep 'broadcast' | sed '/s *//'
成功取得ip地址。