1)perl是非常灵活的,听到有人说,看perl代码最不爽的一点就是:一个判断条件可放在一个语句后面,例如:

my $value = "value" if $needvalue;
有时,如果前面的语句很长,然后要if语句就那么短小地放在后面,若没注意看后面的if语句,就可能会理解错误,这点有时也会让审代码的头疼。

2)最近听到一位前辈说,最好是不要用unless,因为对于没有学过perl的人,这个可能不容易理解,尽量用上perl具有的一些编程语言比较通用的if,这样对于任何看代码的人都是比较有好处的,好吧,记得我的代码里面有几处unless,就这样让它们留在那里把。

3)这阵子刚写perl,对于perl也只是只能用,不能灵活使用,记得,有一次,我用perl来获取shell执行的结果:

my $ret = `ls -al | awk 'NR==2' | awk '{print $3}' `;

看得出错误吗,这个是不能得到想要的结果的, `是不是和很相似,但问题是,我要获取的是第2行第3列的结果,但是,我就是只能得到第2行的,这让我郁闷了一会,明明在shell里是可以的,但是怎么在perl里调用就不行了?难道哥的人品太差。。。于是,去测了一下管道有没有问题,没有——靠,那么神奇,终于,在一天,看了其他前辈写的代码,

my $str = "ssh root\@$ip";

才发现,原来少了一个"\",perl就直接把 $3 当做变量处理了,真是任性,不要以为``里也可以和''里一样任性。

版权声明:本文为博主原创文章,未经博主允许不得转载。

 posted on 2014-12-07 00:34  Rex7  阅读(134)  评论(0编辑  收藏  举报