一、sed语法
sed 'editing command' [file ...]
对每个参数,执行指定的编辑命令,并将结果生成到标准输出。
#删除第一个冒号之后的所有东西,并将结果保存至output.txt文件
sed 's/:.*//g' /etc/passwd > output.txt
#上例中的界定符/是可以换成其他任意可见字符的,本例中使用#作为界定符
sed 's#:.*##g' /etc/passwd > output.txt
#在正则表达式中可以使用转义符\来把特殊字符转换为普通字符。下面的例子把文件里的'\'字符替换为'\'
sed 's/\\/\\/g' ./test.txt
#在s命令里以g结尾表示的是全局性(global),即“以替代文本取代正则表达式中每一个匹配的”,如果为空默认表示只替换第一个匹配的,为数字x则表示替换第x匹配的
echo sed reads well, sed writes well. | sed 's/sed/world/'
=>world reads well, sed writes well.
echo sed reads well, sed writes well. | sed 's/sed/world/2'
=>sed reads well, world writes well.
#sed支持组的后向引用,下面的示例将所有loveable替换为lovers,其中替换部分的\1就是