参考:http://www.runoob.com/perl/perl-directories.html
下面返回JSON格式的文件列表
#!/usr/bin/perl
use strict;
use warnings;
use utf8;
use feature ':5.26';
require File::Find;
# 宣告 STDOUT, STDIN, STDERR 都使用
# UTF-8 編碼方式。
binmode(STDOUT, ":encoding(utf8)");
binmode(STDIN, ":encoding(utf8)");
binmode(STDERR, ":encoding(utf8)");
# 用來顯示資料夾資訊的回呼函式。
sub callback {
unless (-d) {
print "檔案所在目錄的絕對路徑:$File::Find::dir\n";
print "檔案所在位置的絕對路徑:$File::Find::name\n";
print "檔案名稱:$_\n";
};
};
# 用來顯示資料夾資訊的回呼函式。
sub fileList {
unless (-d) {
print "{\"path\":\"$File::Find::dir\",\"name\":\"$_\"}\n";
};
};
my @recursiveFolder = qw(/home/ydx/Documents/Project/Perl-Practice);
# Let's recursive it!
# File::Find::find(\&callback, @recursiveFolder);
File::Find::find(\&fileList, @recursiveFolder);