我可以将参数传递给ClearCase触发器吗?

时间:2012-11-15 19:04:55

标签: perl version-control clearcase

检查我店里的代码涉及一个复杂的舞蹈,最后是在ClearCase签到的触发器内回答几个提示。

我想修改触发器以获取命令行参数。这可能吗?

如果做不到这一点,我希望能够跳转STDIN,以便提示得到答案。我尝试过使用HERE文件,但第二次提示无限期重复。我正在用perl编写脚本。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

trgger的修改需要使用cleartool mktrtype

您可以访问环境变量和参数,具体取决于您的trgger适用的对象类型。

但是你不能访问任何命令行参数。


  

如果做不到这一点,我希望能够跳过STDIN,以便提示得到答案

结帐clearprompt

  

clearprompt命令提示用户输入,然后将输入存储在文件中或返回适当的退出状态。
   clearprompt旨在用于触发操作和GUI脚本

     

在UNIX和Linux系统上,clearprompt可以通过stdinstderr(CLI模式)或通过弹出窗口(GUI模式)与用户交互。

例如:

  

创建一个全元素触发器类型,当创建c_source类型的元素时,会提示输入算法来源
  触发触发器会执行名为hlink_algorithm的脚本,该脚本会调用clearprompt实用程序以获取必要的信息。
  然后,该脚本在新创建的元素对象(例如foo.c@@)和指定文本之间创建纯文本超链接。
  hlink_algorithm脚本会立即显示在mktrtype命令之后。

cmd-context mktrtype -element -all -nc -postop mkelem -eltype c_source \
-exec /net/neon/scripts/hlink_algorithm describe_algorithm
Created trigger type "describe_algorithm".
  

hlink_algorithm脚本:

clearprompt text -outfile /usr/tmp/alg.$CLEARCASE_PPID \
-multi_line  
-def "Internal Design" -prompt "Algorithm Source Document:" 

TOTEXT=‘cat /usr/tmp/alg.$CLEARCASE_PPID‘
cleartool mkhlink -ttext "$TOTEXT" design_spec 
 $CLEARCASE_PN$CLEARCASE_XN_SFX 

rm /usr/tmp/alg.$CLEARCASE_PPID
相关问题