无法打开目录,或者我的(Perl)代码出了什么问题?

Dor*_*onS 4 perl opendir

我有一个文件名logspath.txt,它包含在机器上的logs目录路径中.每行一个目录.虽然该目录存在,但Perl说它没有.

#!/usr/bin/perl -w

open FILE,"logspath.txt" or die $!;
while (<FILE>){
   print $_;
   opendir ($DIR,chomp($_)) or die $!;
Run Code Online (Sandbox Code Playgroud)

当我运行脚本时,我得到:

/home/amosa/
No such file or directory at archive.pl line 6, <FILE> line 1.
Run Code Online (Sandbox Code Playgroud)

列出目录:

~$ ls -l /home/amosa/
total 6
drwxr-xr-x  11 amosa    prodapp     1024 Mar  2 12:49 deploy
drwxr-xr-x   2 amosa    prodapp      512 Mar  2 12:39 lib
-rw-r--r--   1 amosa    prodapp      787 Mar  2 11:02 s
Run Code Online (Sandbox Code Playgroud)

有什么建议?

Chr*_*ung 10

chomp没有有意义的返回值,然后您可以传递给它opendir.你需要chomp在单独的语句中使用你的字符串opendir.

 chomp;
 opendir DIR, $_ or die ...
Run Code Online (Sandbox Code Playgroud)