sed笔记

sed [-n][-e] '[address1,[address2]] !{cmd}' fn
sed [-n] -f sedsrc fn
n:仅打印p或s指定的行
e:下一个参数为命令'[address1,[address2]] cmd'
f:下一个参数是sed脚本
sed命令能够指定0-2个地址,每一个地址是行号或行寻址的正则表达式.若没有指定地址则命令做用于每一行;若只有一个地址则命令做用于与该地址匹配的任意行;若指定了逗号分隔的两个地址则命令做用于匹配的第一个地址到第二个地址之间的每一行,未匹配第二个地址时则默认到文件末尾;若地址后接!则命令做用于不匹配该地址的全部行.
a,i,r,q,=只做用于单行
:label:标签是任意很少于7个字符的序列用于实现b或t的转移,以冒号开始并占据一行,冒号和标签之间无空格.
[address]=:打印被匹配行的行号(须要抑制默认输出),eg:sed -n '/^if/ {=;p}' test.txt打印if开头的行号和内容
[address]a\text:在parttern space中将text放入匹配行的下一行
[address]i\text:在parttern space中将text放入匹配行的上一行
[address1,[address2]]c\text:用text替换parttern space中的内容
[address1,[address2]]b [label]:label后的命令是做用于当前行的下一个命令,若未指定label则再也不有命令做用于当前行
[address1,[address2]]t [label]:若在行寻址范围中成功进行了替换则label后的命令是做用于当前行的下一个命令,若未指定label则再也不有命令做用于当前行
[address1,[address2]]d:从parttern space中删除匹配行,该行不会到标准输出.脚本的第一个命令做用于新的输入行
[address1,[address2]]D:删除由N建立的parttern space中第一个\n以前的内容,并用脚本的第一条命令做用于\n以后的内容
[address1,[address2]]n:读取下一个输入行到parttern space,当前行被送到标准输出,行计数器递增,n后面的命令做用于当前行
[address1,[address2]]N:读取下一个输入行追加到parttern space,新加行与原有行用\n来分隔.用\n可匹配两行之间的\n
[address1,[address2]]p:打印匹配的行,若没有抑制输出(-n),则将致使匹配的行重复输出
[address1,[address2]]P:打印由N建立的parttern space中第一个\n以前的内容
[address]q:遇到匹配行时退出
[address1]r fn:读取fn并追加到parttern space中,fn不存在不报错
[address1,[address2]]w fn:将parttern space的内容写入到fn中,fn不存在就建立
[address1,[address2]]y/ab/AB/:在匹配的行中用A替换a,B替换b,不管ab是否相临
[address1,[address2]]g:将hold space内容复制到parttern space中
[address1,[address2]]G:将hold space内容追加到parttern space中,若hold space为空则将\n追加至parttern space
[address1,[address2]]h:将parttern space内容复制到hold space中
[address1,[address2]]H:将parttern space内容追加到hold space中,若parttern space为空则将\n追加至hold spac
[address1,[address2]]x:交换parttern space和hold space内容
[address1,[address2]]s/parttern/replacement/flags(ngpw):在匹配的行中用replacement替换parttern
n:1-512,对匹配的第n次状况进行替换
g:global,对全部匹配进行替换
p:替换成功后并打印
w fn:替换成功后后写入fn中,fn最多10个
若parttern中含有/则定界符可用其余字符代替,eg:s#/usr/bin#/root/bin#g
replacement是一个字符串,用来替换与正则表达式匹配的内容,replacement中的&表示parttern中正则表达式匹配的内容;replacement中的\n(数字)表示匹配的第n个子串,在parttern中用\(和\)指定正则表达式

相关文章
相关标签/搜索