当我运行clearcase命令时,我遇到了一个问题:
ct find . -branch 'brtype(my_branch)' -exec "echo %CLEARCASE_XPN%"`%CLEARCASE_XPN%未解析为变量,输出为:
%CLEARCASE_XPN%
%CLEARCASE_XPN%
%CLEARCASE_XPN%
...但我确信CLEARCASE_XPN是表示所找到文件的完整路径的变量。
有人能帮上忙吗?操作系统是linux,shell是tcsh,谢谢!
发布于 2012-07-11 17:22:11
使用:
ct find . -branch 'brtype(my_branch)' -exec 'echo $CLEARCASE_XPN'%CLEARCASE_XPN%是一种windows语法。
$CLEARCASE_XPN是可以在Linux tcsh会话中使用的unix语法。
有关使用unix语法的许多示例,请参阅"cleartool find“和"Additional examples of the cleartool find command”。
还要注意在exec指令前后使用了简单引号:-exec 'echo $CLEARCASE_XPN'。
这将阻止外壳程序本身立即解释$CLEARCASE_XPN变量(对于tcsh会话是未知的),并允许cleartool find将正确的值传递给exec指令,将$CLEARCASE_XPN替换为扩展路径名。
参见"String quoting (single quote) vs. Weak Quoting (double quote)":
因此,如果您不确定某个字符是否是特殊字符,请使用强引号marks.
它表明下一个字符不是,所以它可以用在反斜杠和双引号之前,而不是特殊的含义。
在双引号内还允许使用另外两个元字符:美元符号和反引号。
https://stackoverflow.com/questions/11429183
复制相似问题