Perl 提供了很多模块
查询模块是否安装使用 perl -e 'use Cwd'
今天工作中要创建和删除文件夹 网上介绍用File::Path
创建文件夹 | mkdir |
删除文件 | unlink |
删除文件夹 | rmdir |
但是当需要创建多级文件夹,删除嵌套文件和文件夹时,
使用这些函数就有点杯水车薪了。
使用File::Path模块可以完美的解决这种问题
#! /usr/bin/perl
use strict;
use warnings;
use File::Path qw(make_path remove_tree);
$path = "~/z";
$path1 = "~/z/y";
make_path("$path1", { #创建~/z/y两级目录
verbose => 1, #成功后返回创建目录名
mode => 0755,
});
remove_tree("$path", {
verbose => 1, #成功后返回删除目录名
keep_root => 1, #保存z目录
error => \my $err #保存失败信息
} );
if (@$err) {
for my $diag (@$err) {
my ($file, $message) = %$diag;
if ($file eq '') {
print "general error: $message\n";
} else {
print "problem unlinking $file: $message\n";
}
}
} else {
print "No error encountered\n";
}