Perl可以';在windows 10中找不到现有目录

Perl可以';在windows 10中找不到现有目录,windows,perl,Windows,Perl,我正在尝试列出目录文档中的文件。在这个目录中有一些子目录。 perl无法单独访问其中一个子目录“user”。 下面是命令 my @ListofFiles = File::Find::Rule->file() ->name( '*.xml' , '*.wav' ) ->in( $target_dir ); 子目录中的所有xml文件都将列出,但“user”目录下的文件除外。

我正在尝试列出目录文档中的文件。在这个目录中有一些子目录。 perl无法单独访问其中一个子目录“user”。 下面是命令

 my @ListofFiles = File::Find::Rule->file()
                        ->name( '*.xml' , '*.wav' )
                           ->in( $target_dir );
 
子目录中的所有xml文件都将列出,但“user”目录下的文件除外。 这个目录在windows资源管理器中非常可见,我可以通过游标进行交互。 但是perl无法访问它。当我使用perl命令检查目录“user”是否存在时。它显示未找到此类目录

Additional info : Directory "doc" has  following 
             1) Directory "Audio " -> Contains .wav files
            2) Directory "Zip"   -> contains .zip files
            3) Movie.xml
            4) Image.xml
            5) Directory "user"  -> contains .xml
The .wav and .xml files are fethched without any issues
我不确定这里有什么问题。
请提供帮助。

尝试执行以下脚本,让我们知道它是否适用于您,并向我们显示结果:

#!/usr/bin/perl

use strict; use warnings;

use Data::Dumper;
use File::Find::Rule;

my $directory = "C:/doc";

my @subdirs = File::Find::Rule->directory->in( $directory );
print "Subdirectories:\n".Dumper(\@subdirs);

my @ListofFiles = File::Find::Rule->file()
                        ->name( '*.xml' , '*.wav' )
                           ->in( $directory );

print "ListofFiles:\n".Dumper(\@ListofFiles);

@Dheena Dayalan您是否在
$target\u dir
中设置了正确的路径?
user
目录是否隐藏/当前用户是否有查看权限?@vkkk05是的,我有。这也可以从规则查询中列出其他子目录文件的原因得到确认。是的,它确实有正确的条件。@Dheena Dayalan Re:当我使用perl命令检查目录“user”是否存在时。它显示找不到这样的目录—您能粘贴它是什么命令吗?“但perl无法访问它。”这是描述问题的一种非常糟糕的方式。您需要说明1)如何在变量
$target\u dir
中创建路径,2)如何检查结果数组中的内容,最好是
Data::Dumper
print,以及3)显示perl程序文件相对于target\u dir的文件结构。现在我们所能做的就是猜测,你必须提供更多的信息。@vkk05。我们有一个命令来检查目录是否存在'-e“C:\\doc\\user''。我用这个来验证谢谢你的代码。但这对我的情况没有帮助。但是,可以访问c#中相同的“用户”目录。当我使用xcopy将这个“user”目录复制到另一个位置时,我可以看到它将“?user”作为目录名附加了“?”。这仅在xcopy期间可见。这是否会导致问题,perl是否因此无法识别它。但我需要一个perl解决方案。