sed一些参数的用法,把/etc/passwd 复制到/root/test.txt,用sed打印所有行
打印test.txt的3到10行
打印test.txt 中包含 'root' 的行
删除test.txt 的15行以及以后所有行
删除test.txt中包含 'bash' 的行
替换test.txt 中 'root' 为 'toor'
替换test.txt中 '/sbin/nologin' 为 '/bin/login'
删除test.txt中5到10行中所有的数字
删除test.txt 中所有特殊字符(除了数字以及大小写字母)
把test.txt中第一个单词和最后一个单词调换位置
把test.txt中出现的第一个数字和最后一个单词替换位置
把test.txt 中第一个数字移动到行末尾
在test.txt 20行到末行最前面加 'aaa:'
我做的答案:
sed -n '1,$'p test.txt
sed -n '3,10'p test.txt
sed -n '/root/'p test.txt
sed '15,$'d test.txt
sed '/bash/'d test.txt
sed -r 's/(root)/toor/g' -n test.txt
sed -r 's@(/sbin/nologin)@/bin/login@g' test.txt
sed -r '5,10s/[0-9]//g' test.txt
sed -r 's/[^a-zA-Z0-9]//g' test.txt
sed -r 's@(^[^:]+)(:.*:)([^:]+$)@\3\2\1@' test.txt
sed -r 's@([0-9]+)(.*:)([^:]+$)@\3\2\1@' test.txt
sed -r 's@([0-9]+)(.*)($)@\2\3\1@' test.txt
sed -r '20,$s@(^.*$)@aaa:\1@' test.txt