无法访问perl中有空格的“文件路径”



我有类似的问题,我试图访问当前的工作目录与

之类的空间

"C:/Program Files (x86)/Jenkins/jobs/ISG_Regression_Testing/workspace"

和我尝试了上面提供的所有解决方案,但没有起作用。我的代码段如下:

local @ARGV = ( "ISG_Programs.txt" );
 my $cwd = getcwd();
 my $inputPath = "$cwd/Sources/Tools/ISGTool/ISG_REGRESSION_TESTS/$ARGV[0]";
 print $inputPath;
 die "Missing file: $ARGV[0]n" unless -e $inputPath;

请有人可以在此方面提供解决方案。

我创建了类似的文件夹 - 结构并在我的系统(运行win10)中进行文件并运行代码:

use Cwd;
local @ARGV = ( "ISG_Programs.txt" );
my $cwd = getcwd();
my $inputPath = "$cwd/Sources/Tools/ISGTool/ISG_REGRESSION_TESTS/$ARGV[0]";
print $inputPath;
die "Missing file: $ARGV[0]n" unless -e $inputPath;

似乎可以正常工作,我得到以下输出:

C:/Program Files (x86)/Jenkins/jobs/ISG_Regression_Testing/workspace/Sources/Tools/ISGTool/ISG_REGRESSION_TESTS/ISG_Programs.txt

您可以检查文件的路径是否还可以吗?您是否在"打印$ inputpath"中获得正确的输出; - 相?

perl应该自动逃脱空格,因此它们不应该是问题,即您的代码看起来还不错。您是从:C:/Program Files(x86)/jenkins/jobs/isg_regression_testing/workspace?

运行它吗?

谢谢!

最新更新