print reverse <>;
print sort <>;
perl处理这些操作的确切步骤是什么?需要更多关于这里做什么的解释?
这似乎为1st
一个,perl的不只是反转的调用参数的顺序,而每个文件也内容...
print reverse <>;
print sort <>;
perl处理这些操作的确切步骤是什么?需要更多关于这里做什么的解释?
这似乎为1st
一个,perl的不只是反转的调用参数的顺序,而每个文件也内容...
print reverse <>;
<>
在数组环境中计算,这意味着它“吸食“ 文件。它读取整个文件。在由@ARGV命名的文件表示的魔术文件的情况下,它将按照命令行参数(@ARGV)引用的顺序读取所有文件的内容。
reverse
然后反转数组的顺序,这意味着最后一个文件的最后一行最先出现,最后一个文件的第一行最后一行出现。
print
然后打印数组。
从你的笔记,你可能会想是这样的:
perl -e 'sub BEGIN { @ARGV=reverse @ARGV; } print <>;' /etc/motd /etc/passwd
这在docs for I/O operators描述。以下是文档的摘录:
空文件句柄<>是特殊的:它可以用来模拟sed和awk的行为。来自<>的输入来自标准输入或来自命令行上列出的每个文件。以下是它的工作原理:第一次计算<>时,将检查@ARGV数组,如果它是空的,则$ ARGV [0]设置为“ - ”,打开时为您提供标准输入。 @ARGV数组然后被处理为一个文件名列表。
它值得阅读整个文档,因为它提供了在各种使用情况下相当于<>
的等效“非魔力”Perl代码。
数组是一个变量类型;你的意思是“在列表上下文中评估”,“颠倒列表的顺序”,“然后打印列表”。 – ysth