3

以前的帖子可能有用: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 =
4

3 回答 3

2

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

$current_dir = `cleartool pwd`;

这甚至可以在 Windows 上工作:

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

于 2012-08-17T13:40:24.817 回答
0

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

use Cwd;

my $current_dir = getdcwd 'M:';
于 2012-08-17T13:54:01.337 回答
0

您正在pwdcd. cd仅打印到STDERR,即它静默成功。

我的观点是,这cd对你的情况没有用。

于 2012-08-17T13:41:46.740 回答