9.4/9.5 sed
sed能够做到grep能做到的功能(没有特殊颜色),sed工具的强项在于替换一些字符。
替换 sed -n‘/root/’p 12.txt 输出文件中代root行
-n的作用是只打印匹配的行,其他行不打印,p的作用是打印的意思:
sed -n‘/r*t/’p 12.txt 输出r和t之间有0个或多个字符的行
sed -n‘/r\+t/’p 12.txt 输出r和t之间有1个或者0个字符的行
这个命令还可以这样写sed -nr‘/r+t/’p 12.txt
sed -nr‘/o{2}/’p 12.txt输出一行内有2个字符o的行o的位置可以不连续t
sed -n '/root\|nologin/'p 12.txt ‘|’或者的意思
sed -nr '/root|nologin/'p 12.txt 输出带root或者nologin的行
sed -n ‘2’p 12.txt 输出第2行
sed -n '1,4'p 12.txt 输出第1到4行
sed -n '7,$'p 12.txt 输出第7行到文件最后一行
sed -e '1'p -e '/root/'p -e '/[0-9]/'p -n 12.txt -e选项可进行多个操作
sed -n‘/r..o/’p 12.txt .表示一个字符
sed -n '/ROOT/'Ip 12.txt 不区分大小写
sed -n '/root/'Ip 12.txt
sed ‘1’d 12.txt 除了第一行以外输出到屏幕
sed ‘1,3’d 12.txt 除了前3行剩下的显示
sed -i ‘1,3’d 12删除前3行
sed -i‘/word/’d 12.txt 删除带有word的行并输出其他行
sed -i '/1234/'d 12
sed 's/ro1/root/g' 12 ro1变成root
sed ‘3s/word1/word2/g’12.txt word1变成word2
sed '2s/:/@/g' 12 第二行:变成@
sed '1,3s/:/@/g' 12 头3行:变成@
sed ‘s/[0-9]//g’12 把数字去掉
sed 's/[a-zA-Z]//g' 12 把字母去掉包括大小写
sed 's/[a-z]//g'I 12 大写的i试一下
sed -r 's/([^:]+):(.*):([^:]+)/\3:\2:\1/' 12
sed -r 's/(.):(.):(.*)/\3:\2:\1:/' 12
's/([^:]+):(.*):([^:]+)/\3:\2:\1/'
ro:1AAABBBCC:ot:123
1 bin:x:1:1:bin:/bin:/sbin/nologin
's/(.):(.):(.*)/\3:\2:\1/'
ro:1AAABBBCC:ot:123
1 bin:x:1:1:bin:/bin:/sbin/nologin
sed -r‘s/(.*)/aaa:&/g’