学着使用简短的Perl命令

| 暂无评论 | 暂无引用通告

-->

who |perl -ne '@F=split;print "$F[0]\n";'

开关n指的是对于输入逐行执行

开关e指执行后面的代码

split函数默认从$_中获得输及以/\s*/作表达式分隔字串

进一步简化命令

who |perl -ane 'print "$F[0]\n"';'

开关a 实现使用split分隔$_给数组@F

who |perl -lane 'print "$F[0]";'

开关l相当于 $\=$/将输入域分隔符的值赋给输出域分隔符

who |perl -lape '$_=$F[0]'

开关p相关于语句print打印默认输出并进行循环

看下面的代码

        #!/usr/bin/perl
$\ = $/; # from -l
while (<>) { # from -p
chop; # from -l
@F = split; # from -a
$_ = $F[0]; # argument to -e
print; # from -p
        }

 当需要定义输入域分隔符时使用选项 -F

perl -aF: -lne 'print $F[0]' /etc/passwd

 

暂无引用通告

发送引用通告网址: http://supersun.info/mt/mt-tb.cgi/574
如果您想引用这篇日记到您的Blog,请复制上面的链接,放置到您发表文章时的相应界面中。

发表评论

最新资源

  • IMG_1437.JPG
  • line.png
  • bar.png
  • perl_calander.jpg

关于此日记

此日记由 supersun 发表于 2007年4月13日 11:21

此Blog上的上一篇日记原创脚本:top500 part2

此Blog上的下一篇日记还有这样玩鸡蛋的

首页归档页可以看到最新的日记和所有日记。