文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>HOT PERL ONLINERS

HOT PERL ONLINERS

时间:2006-07-05  来源:vio

Copyright: http://www.unixguide.net/unix/perl_oneliners.shtml   HOT PERL ONLINERS

   Just enough perl to do most everything! Tom Christianson (spelling?)
   once posted a canonical list of one line perl programs to do many common
   command-line tasks.
   It included:
   # run contents of "my_file" as a program
   perl my_file

   # run debugger "stand-alone"
   perl -d -e 42

   # run program, but with warnings
   perl -w my_file

   # run program under debugger
   perl -d my_file

   # just check syntax, with warnings
   perl -wc my_file

   # useful at end of "find foo -print"
   perl -nle unlink

   # simplest one-liner program
   perl -e 'print "hello world!\n"'

   # add first and penultimate columns
   perl -lane 'print $F[0] + $F[-2]'

   # just lines 15 to 17
   perl -ne 'print if 15 .. 17' *.pod

   # in-place edit of *.c files changing all foo to bar
   perl -p -i.bak -e 's/\bfoo\b/bar/g' *.c

   # command-line that prints the first 50 lines (cheaply)
   perl -pe 'exit if $. > 50' f1 f2 f3 ...

   # delete first 10 lines
   perl -i.old -ne 'print unless 1 .. 10' foo.txt

   # change all the isolated oldvar occurrences to newvar
   perl -i.old -pe 's{\boldvar\b}{newvar}g' *.[chy]

   # command-line that reverses the whole file by lines
   perl -e 'print reverse <>' file1 file2 file3 ....

   # find palindromes
   perl -lne 'print if $_ eq reverse' /usr/dict/words

   # command-line that reverse all the bytes in a file
   perl -0777e 'print scalar reverse <>' f1 f2 f3 ...

   # command-line that reverses the whole file by paragraphs
   perl -00 -e 'print reverse <>' file1 file2 file3 ....

   # increment all numbers found in these files
   perl i.tiny -pe 's/(\d+)/ 1 + $1 /ge' file1 file2 ....

   # command-line that shows each line with its characters backwards
   perl -nle 'print scalar reverse $_' file1 file2 file3 ....

   # delete all but lines beween START and END
   perl -i.old -ne 'print unless /^START$/ .. /^END$/' foo.txt

   # binary edit (careful!)
   perl -i.bak -pe 's/Mozilla/Slopoke/g' /usr/local/bin/netscape

   # look for dup words
   perl -0777 -ne 'print "$.: doubled $_\n" while /\b(\w+)\b\s+\b\1\b/gi'

   # command-line that prints the last 50 lines (expensively)
   perl -e 'lines = <>; print @@lines[ $#lines .. $#lines-50' f1 f2 f3 ...

相关阅读 更多 +
排行榜 更多 +
合合合军团

合合合军团

策略塔防 下载
街头滑板

街头滑板

体育竞技 下载
武者生存

武者生存

体育竞技 下载