Perl chdir不起作用

时间:2012-08-17 13:30:17

标签: windows perl chdir

上一篇文章可能有用:Perl system() call failed with return code 65280

同样,我已多次使用此代码,但它在此处不起作用。我已经从PATH移动了所有其他perl实例。

来源:

$targetDir = "M\:\\bldforge_AOMS_DEV";
print ("targetDir=$targetDir\n");

chdir($targetDir) or die "Cant chdir to $dir $!";
$current_dir = `cd`;
print "\nCurrent dir = $current_dir\n" 

输出:

Z:\>ccperl test.pl
targetDir=M:\bldforge_AOMS_DEV

Current dir =

3 个答案:

答案 0 :(得分:2)

为了确保您确实处于ClearCase视图中,我会使用cleartool pwd

$current_dir = `cleartool pwd`;

即使在Windows上也能正常工作:

  

cleartool pwd命令列出当前的工作目录   此命令适用于交互式cleartool和多工具会话,以及模拟交互式会话的批处理文件或shell脚本。

答案 1 :(得分:0)

您正在将pwdcd混在一起。 cd仅打印到 STDERR ,即它会以静默方式成功。

我的观点是cd对你的情况毫无用处。

答案 2 :(得分:0)

要获取当前工作目录,您应该使用Cwdgetdcwd函数:

use Cwd;

my $current_dir = getdcwd 'M:';