===================================================================================================
Shell sed:
sed -e '3,5 aHOSTS' hosts
在第3到5行的后面添加HOSTS
Note:
a 表示添加行
sed -e '4 s/old/new/' hosts
将第4行的old替换为new
sed -n 's/^\(f.\{3\}\)/ubuntu:\1/p' hosts
-n与p一起使用只打印那些发生替换的行
sed -n '/fe00/,/ff02/p' hosts
只打印从feoo到ff02之间的行
sed -n '2,/^HOSTS/p' hosts
显示从第2行开始到第一次出现HOSTS的行
sed -e 's/$/\tend/g' hosts
每一行的结尾添加\tend
sed -e '13,24d' -e 's/$/\tend/g' file
删除从13到24行,并且将每行结尾追加\tend
sed '/^\-end/r file2' file1
file2追加在file1中匹配-end的行后面
sed '/22/w file' file1
在file1中将匹配22的行写入到file中
sed '/^00/ a\CD' file
在file中将CD添加到匹配以00开头的行的后面
sed '/^00/ i\CD' file
在file中将CD添加到匹配以00开头的行的前面
sed -i '/36/ {n;s/CD/ChengDu/}' file
在file中将匹配36那行的下一行中,将CD替换为ChengDu
Note:
n 读取匹配行的下一行输入,用下一个命令处理匹配行的下一行,而不是匹配行
sed '7,9 y/abcd/ABCD/' file
将第7行到第9行所有abcd转换为ABCD
Note:
y 把一个字符翻译为另一个字符
sed -i 's/CD/ChengDu/g' file
Note:
i 表示直接修改文件,不输出
sed '5q' file
打印完第5行后直接退出
sed -e '/ChengDu/h' -e '/a\-b\-c/G' file
将包含ChengDu字符串的行的内容保存在缓冲区中,然后将缓冲区的内容拿出来添加到包含a-b-c字符串行的后面
Note:
h 拷贝匹配成功行的内容到内存中的缓冲区
G 获得内存缓冲区的内容,并追加到当前模板块文本的后面
sed -e '/ChengDu/h' -e '/location/x' file
将包含ChengDu字符串的行的内容保存在缓冲区中,然后再将缓冲区的内容替换匹配location字符串的行
Note:
x 表示行替换操作
===================================================================================================
Shell sed:
sed -e '3,5 aHOSTS' hosts
在第3到5行的后面添加HOSTS
Note:
a 表示添加行
sed -e '4 s/old/new/' hosts
将第4行的old替换为new
sed -n 's/^\(f.\{3\}\)/ubuntu:\1/p' hosts
-n与p一起使用只打印那些发生替换的行
sed -n '/fe00/,/ff02/p' hosts
只打印从feoo到ff02之间的行
sed -n '2,/^HOSTS/p' hosts
显示从第2行开始到第一次出现HOSTS的行
sed -e 's/$/\tend/g' hosts
每一行的结尾添加\tend
sed -e '13,24d' -e 's/$/\tend/g' file
删除从13到24行,并且将每行结尾追加\tend
sed '/^\-end/r file2' file1
file2追加在file1中匹配-end的行后面
sed '/22/w file' file1
在file1中将匹配22的行写入到file中
sed '/^00/ a\CD' file
在file中将CD添加到匹配以00开头的行的后面
sed '/^00/ i\CD' file
在file中将CD添加到匹配以00开头的行的前面
sed -i '/36/ {n;s/CD/ChengDu/}' file
在file中将匹配36那行的下一行中,将CD替换为ChengDu
Note:
n 读取匹配行的下一行输入,用下一个命令处理匹配行的下一行,而不是匹配行
sed '7,9 y/abcd/ABCD/' file
将第7行到第9行所有abcd转换为ABCD
Note:
y 把一个字符翻译为另一个字符
sed -i 's/CD/ChengDu/g' file
Note:
i 表示直接修改文件,不输出
sed '5q' file
打印完第5行后直接退出
sed -e '/ChengDu/h' -e '/a\-b\-c/G' file
将包含ChengDu字符串的行的内容保存在缓冲区中,然后将缓冲区的内容拿出来添加到包含a-b-c字符串行的后面
Note:
h 拷贝匹配成功行的内容到内存中的缓冲区
G 获得内存缓冲区的内容,并追加到当前模板块文本的后面
sed -e '/ChengDu/h' -e '/location/x' file
将包含ChengDu字符串的行的内容保存在缓冲区中,然后再将缓冲区的内容替换匹配location字符串的行
Note:
x 表示行替换操作
===================================================================================================