sed命令是流编辑器。工作流程是:每次将相应的行==》模式空间(内存中)==》模式匹配在处理==》将模式空间里的内容输出到屏幕。注:sed命令默认不处理原数据,而是处理原数据的副本。
用法格式:活动:慈云数据爆款香港服务器,CTG+CN2高速带宽、快速稳定、平均延迟10+ms 速度快,免备案,每月仅需19元!! 点击查看sed ‘AddressCommand’ file
对指定文件中符合Address(地址筛选的行)进行Command(命令处理)
Address支持的用法:
1,起始行,结束行。例‘1,,100’(1到100行)
2,/正则匹配/ 支持正则模式匹配。里‘/^root/’(以root为行首的行)
3,/正则匹配1/,/正则匹配2/ 表示被模1式匹配到的行开始到被模式2匹配到的行4,行号 精确匹配到某行,$表示最后一行。例‘1’(第一行)
5,起始行,+n 从起始行开始,到之后开发云主机域名的N行
Command用法:d:删除符合条件的行。 例 sed ‘1,2d’ /etc/passwd(删除/etc/passwd中的第一到第二行) sed ‘/^root/d’ /etc/passwd(删除/开发云主机域名etc/passwd中root为行首的行) sed ‘/^//d’ /etc/passwd(删除etc/passwd中/开头的行,为转意) p:显示符合条件的行。例 sed ‘/^//p’ /etc/passwd(显示etc/passwd中/开头的行) a(apend) /string:在指定的行后追加字符串string新行,n表示换行
i(insert)/string:在指定的前插入字符串string新行,n表示换行r file:将指定的文件的内容添加至符合条件的行处
w file:将指定的范围内的内容另存(会保存)到指定的文件中
s 查找并替换:将匹配到的内容进行替换 用法 sed ‘s/查找内容(支持正则)/替换内容(字符串,不支持正则)/修饰符’file 。在每行中默认只替换在该行中第一次匹配到的内容。 修饰符:g 全局替换。i 忽略大小写。
注:在s命令中,只要三个分割符一样,大部分符号都可以作为分隔符,这样可以在匹配冲突时换分隔符避免使用转移符
例:sed ‘s#(l..e)#1r#g’ 文件名。或 sed ‘s#l..e#$r#g’ 文件名
$:为引用模式匹配的所有内容。
$与后向引用的差别:只引用匹配内容中的一部分内容是,只能用后向引用。例: sed ‘s#l(..e)#L1#g’ 文件名
sed命令选项:
-h:禁默模式,不在显示模式空间的内容
-i:直接修改原文件
-e:同时执行多个脚本 -e 地址命令 -e 地址命令 …-f 指定文件:sed -f /path/scripts file 表示脚本开发云主机域名里的内容出来文件
-r:支持扩展正则
本文从转载,原作者保留一切权利,若侵权请联系删除。
《sed命令》来自互联网同行内容,若有侵权,请联系我们删除!
还没有评论,来说两句吧...