動作しません。それは私がバッチファイルからのcleartoolのfindコマンドを起動しようと再び;-)ClearCaseがTclのスクリプトやバッチファイルとの組み合わせでコマンドを見つける:リダイレクションが
私です。そのバッチファイルはTclスクリプトから引数を取得します。
バッチファイル:
SET VERARG="version(\main\LATEST) && !lbtype(%3)"
cleartool find . -version %VERARG% -print > Y:\x\Logs\%3.log
のTclスクリプト:
set v_cmd "y:\\x\\clearcase_find_change.cmd $v_drive $v_path $v_label \n"
set v_outp [exec cmd << $v_cmd]
私は、コマンドラインからバッチファイルを起動すると、それが動作し、それがログ・ファイルへのヒットをwrotesが、私Tclから起動すると、ヒットがコマンドウィンドウに表示されますが、内容のないログファイルしか作成されません。私はそれを非常に単純なバッチファイルで既にテストしました。このファイルはエコーコマンドとリダイレクトだけを内容としています。それがうまくいって、別のドライブを使用しようとしましたが、成功しませんでした。私はバッチファイルの受け取った引数もチェックしましたが、すべてがうまく見えました。
働いたシンプルなコール、:
Batch: echo %1 > Y:\x\%2.log
Tcl: set v_cmd "y:\\x\\simple_echo.cmd $v_lib $v_label \n"
可能性1と2もコマンドウィンドウを開くことはありませんが、可能性3は@Kai Tclエラー –
を生成します。 OK。基本的には、 '/ c'オプション(シンプルで非ClearCaseに関連するTclスクリプトの単純なコマンド)の中で遊ぶ必要があります。それをClearCase(cleartool)cmdコマンドに適合させます。 – VonC