学海无涯 个人blog lnmps.com 新站
分类: LINUX
2013-04-12 23:12:46
awk 去除第一行和最后一行
awk 'NR>2{print p}{p=$0}' urfile
第一行时, NR=1, 不执行print, p=第一行的内容
第二行时, NR=2, 不执行print, p=第二行的内容
第三行时, NR=3, 执行print p,此时p=第二行的内容, 即打印第二行, 然后p=第三行
............
最后一行时, 执行print p, 打印倒数第二行, 然后p=最后一行
也就是去除了第一行和最后一行
awk '{sub(/good/,"bad"); print $0}'只把每行的第一个good替换为bad
awk '{gsub(/good/,"bad"); print $0}'把每一行的所有good替换为bad
sed '/fell/ s/good/bad/g'
awk '{if(/fell/) gsub(/good/,"bad"); print $0 }'只在出现字符串fell字符串的前提下,将找到的行中的good替换为bad
sed '/fell/ !s/good/bad/g'
awk '{if(!/fell/) gsub(/good/,"bad"); print $0 }'只在不出现字符串fell字符串的前提下,将找到的行中的good替换为bad
sed 's/good/bad/g;s/fell/bad/g;s/sun/bad/g'
sed 's/good\|fell\|sun/bad/g'
awk '{gsub(/good|fell|sun/,"bad") ; print $0}'不管是good、fell还是sun,一路替换为bad