@
KentY 博学!
找了几个简单的 sed/awk one liner,翻译成对应的 perl 命令,熟悉 sed/awk 而对 Perl 不了解的同学可以感受下:
1. gsed '/^$/d;G' filename
perl -ne 'print unless /^$/' filename
2. gsed 's/reg/replace/flags' filename
perl -pe 's/reg/replace/flags' filename
3. gsed '1!G;h;$!d' filename
perl -e 'print reverse <>' filename
4. gsed '/\n/!G;s/\(.\)\(.*\n\)/&\2\1/;//D;s/.//'
perl -pe '$_=reverse'
5. gawk '{print NR":"NF}' input.txt
perl -alne 'print $., ":", @
F+0' input.txt
6. gawk '{print $NF}' input.txt
perl -alne 'print $F[-1]'
7. gawk 'NF > 2' input.txt
perl -alne 'print if @
F > 2'
8. gsed -n 100,200p filename
perl -ne 'print if 100..200' filename