我有一个Perl脚本,其中输入了目录的路径。该目录中包含XML文件。
在我的代码中,我遍历所有xml文件,并为所有xml文件创建绝对路径。代码运行良好。
#!/usr/bin/perl
use File::Spec;
$num_args = $#ARGV + 1;
if ($num_args != 1) {
print "\nUsage: $0 <input directory>\n";
exit;
}
my $dirPath = $ARGV[0];
opendir(DIR, $dirPath);
my @docs = grep(/\.xml$/,readdir(DIR));
foreach my $file (@docs)
{
my $abs_path = join("",$dir,$file);
print "absolute path is $abs_path";
}
我这里有一个问题,就是将$dirPath和$file连接起来时没有分隔符,这意味着$dirPath必须以“/”结尾。那么在Perl中是否有任何方式或内置函数可以处理此条件并替换join方法。
我的目的只是不用担心分隔符“/”。即使脚本被调用的路径为“/test/dir_to_process”或“/test/dir_to_process/”,我也应该能够生成所有xml文件的正确绝对路径,而无需担心分隔符。
如果有人有任何建议,请告诉我。