CLEARCASE_XPN未在clearcase命令中解析为变量

时间:2012-07-11 09:07:05

标签: clearcase

我遇到一个问题,当我运行clearcase命令时:

ct find . -branch 'brtype(my_branch)' -exec "echo %CLEARCASE_XPN%"`

%CLEARCASE_XPN%未解析为变量,输出为:

%CLEARCASE_XPN%
%CLEARCASE_XPN%
%CLEARCASE_XPN%
...

但我确信CLEARCASE_XPN变量表示找到的文件的整个路径 有人可以帮忙吗?操作系统是linux,shell是tcsh,谢谢!

1 个答案:

答案 0 :(得分:1)

使用:

ct find . -branch 'brtype(my_branch)' -exec 'echo $CLEARCASE_XPN'

%CLEARCASE_XPN%是一种Windows语法。

$CLEARCASE_XPN是unix语法,可以在Linux tcsh会话中使用。

有关使用unix语法的许多示例,请参阅“cleartool find”和“Additional examples of the cleartool find command”。


还要注意在exec指令周围使用简单的引号:-exec 'echo $CLEARCASE_XPN' 这将阻止shell本身立即解释 {/ 1}} $CLEARCASE_XPN变量(对于tcsh会话是未知的)并且将允许cleartool find传递正确的到exec指令,用扩展路径名替换$CLEARCASE_XPN

请参阅“String quoting (single quote) vs. Weak Quoting (double quote)”:

  
      
  • 强引号可防止字符具有特殊含义,因此如果您将字符放在单引号内,您所看到的就是您得到的内容。
      因此,如果您不确定某个字符是否是特殊字符,请使用强引号。

  •   
  • 弱引号标记将大多数字符视为普通字符,但允许某些字符(或更确切地说是元字符)具有特殊含义。如前面的示例所示,双引号内的反斜杠是一个特殊的元字符   它表示下一个字符不是,因此可以在反斜杠之前和双引号之前使用,从而逃避特殊含义。
      双引号内还有两个允许的元字符:美元符号和后引号。

  •