2012-12-27 52 views

回答

13

形式<FILEHANDLE>只會從FILEHANDLE讀取。

如果@ARGV爲空,則表格<>將從STDIN中讀取;或者所有名稱仍然在@ARGV中的文件都包含傳遞給程序的命令行參數。

+1

讓我不知道'@ ARGV'那部分更多信息+1 –

+3

@JasonSperske你的意思是你從未編寫過'而(<>){... }'在一個需要文件名參數的腳本中,以便處理這些文件? – Barmar

+0

詳細信息可以在http://perldoc.perl.org/perlop.html#I%2fO-Operators – Barmar

9

<><ARGV>的簡寫。並且ARGV是一個特殊的文件句柄,可以打開並遍歷@ARGV(命令行參數)中指定的所有文件名,也可以將別名替換爲STDIN(當@ARGV爲空時)。

+0

不,它沒有被賦予'STDIN'的別名,它仍然是'ARGV',它在'@ ARGV'爲空時從'-'又名STDIN讀取。不同之處在於,當你到達eof並再讀一次時,它會再次檢查'@ ARGV',如果設置了一個,則從那裏打開文件,如果沒有,則再次默認爲'-'。 – ysth

0
+0

我在perlfunc中找到了'<>'14次 - 你是指哪一部分? – memowe

+0

對不起,我的意思是perlop,關於I/O操作符的部分。我會更正我的答案,謝謝。 –

相關問題