exec cmd.exeに関する情報を探していましたが、役立つ情報が見つかりません。誰かが私に次のコードを説明できますか?
exec cmd.exe /c start /wait $buildLoc\\setup.exe /extract_all:C:/setup
exec cmd.exeに関する情報を探していましたが、役立つ情報が見つかりません。誰かが私に次のコードを説明できますか?
exec cmd.exe /c start /wait $buildLoc\\setup.exe /extract_all:C:/setup
それを分解しましょう:
exec cmd.exe /c start /wait $buildLoc\\setup.exe /extract_all:C:/setup
#^^^
execコマンドはサブプロセスを開始します。
exec cmd.exe /c start /wait $buildLoc\\setup.exe /extract_all:C:/setup
# ^^^^^^^^^^
cmd.exeはWindowsの「バッチ」シェルです。/c
フラグは、引数をコマンドとして実行するように要求します。
exec cmd.exe /c start /wait $buildLoc\\setup.exe /extract_all:C:/setup
# ^^^^^^^^^^^
に組み込まれているstartコマンドは、別のプログラムを起動させる方法cmd.exe
でもあります。フラグは、/wait
開始されたプログラムが終了するまで待機するように指示します。
exec cmd.exe /c start /wait $buildLoc\\setup.exe /extract_all:C:/setup
# ^^^^^^^^^
通常のTCL変数。TCL内で拡張されます。
残りはsetup.exeプログラムが行うことです(誰が何を知っているかです...)
ここで実行されているプログラム(以下を参照)についてもう少し知らなければ、中間体exec.cmd /c start /wait
が必要だった理由を正確に言うのは難しいです。start
cmd.exeは(tclプログラムから継承された環境を使用するのではなく)システムのデフォルト環境をすべてロードし、ターミナルウィンドウを開いてsetup.exeプログラムの出力が次のように表示されるようにすることだと思います。ユーザー。
チェックアウトauto_execok
exec {*}[auto_execok start] /wait $buildLoc\\setup.exe /extract_all:C:\\setup