今天,我们来探讨一下perl的命令行操作,基本语法是这样
perl -n -e 'line process cmd' your_file
这样的话就能对文件的每一行进行处理,其实我们的大部分工作,也就是读文件,然后
对每行的内容进行处理,所以,用perl -n -e 命令行操作其实可以使我们事半功倍
比如,我有成绩单文件 score
Jim english 99
Jim math 80
Tom english 77
Tom math 44
...
我需要查看数学成绩不及格的学生和其成绩
那么我只要这么搞就OK:
perl -n -e 'my @fields = split(/\s+/,$_);chomp @fields; if($fields[1] eq "math" and $fields[2] < 60){ print $_;}' score
当然,你也可以修改你的.bashrc,做一个alias
alias eperl='perl -n -e'
然后,你只需要
eperl 'my @fields = split(/\s+/,$_);chomp @fields; if($fields[1] eq "math" and $fields[2] < 60){ print $_;}' score 就OK了
阅读(14027) | 评论(2) | 转发(0) |