это снова я; -)
Я пытаюсь запустить команду findtool find из командного файла. Этот пакетный файл получает свои аргументы из сценария 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]
Когда я запускаю командный файл из командной строки, он работает и записывает обращения в файл журнала, но когда я запускаю его из Tcl, я вижу обращения в командном окне, но он только создает журнал. файлы без содержания. Я уже тестировал его с очень простым пакетным файлом, который содержит только команду echo и перенаправление. Это сработало, я также пытался использовать разные диски, но безуспешно. Я также проверил полученные аргументы командного файла, но все выглядело хорошо для меня.
Простой звонок, который сработал:
Batch: echo %1 > Y:\x\%2.log
Tcl: set v_cmd "y:\\x\\simple_echo.cmd $v_lib $v_label \n"