如何打开多个文件夹并比较Perl中的文件?

时间:2009-06-24 09:49:29

标签: perl

我有一个parent_folder_1和许多子文件夹。我也有parent_folder_2和许多子文件夹。

子文件夹包含.d文件。

我必须得到用户想要比较的parent_folders的数量。

例如:

  

“您要比较多少个parent_folders?”

如果用户输入4,那么脚本应该询问所有四个parent_folders的路径。

并且,在一个父文件夹中,在一个子文件夹中,还有另一个名为d folder的文件夹,其中包含.d文件。

我必须比较所有四个父文件夹中的每个.d文件,并且必须将结果放在Excel电子表格中,以确定哪些.d文件存在于哪些父文件夹中。

如果parent folder1parent folder3中存在xxx.d sf,则输出应为:

xxx.d  parent folder1 #this space is for parent folder2 if present# parentfolder3

2 个答案:

答案 0 :(得分:3)

这是个主意:

  • 使用File::Find遍历目录,子目录和文件。
  • wanted()中,检查:

    -f $ File :: Find :: name&& $ File :: Find :: name =〜/^.+ \ .d $ /

  • 如果上述条件评估为false,则返回;否则,比较文件并填充电子表格。

答案 1 :(得分:0)

你可以尝试使用

#opening the directory
opendir (DIR, $directory) or die $!;
#reading the directory 
while (my $file = readdir(DIR)) {
print $file;}
#thus the giving the accessing the file in the way u would like to.