2012-02-20 5 views
1

私は最終的に別のバッチファイルを開始し、それが完了するのを待つバッチスクリプトを持っています。代わりにその%program_pathの%ポイントプログラムを開くのなぜ起動コマンドでプログラム名に変数を使用できないのですか?

for %%i in ("*.xml") do start /separate /wait "%PROGRAM_PATH%" "%LOCAL_OUTGOING_PATH%\%%i" 

何が起こったことは、それは、Internet Explorerを起動し、私%%で指定されたXMLファイルを示してしまっていること:ここで私は、もともと持っていた構文は次のとおりです。それは、startコマンドの%PROGRAM_PATH%部分を無視したようなものでした。 %PROGRAM_NAME%を引用符なしで使用してみましたが、どちらもうまくいきませんでした。 %program_pathの%、やり方によって、「 『C指して:\ DOS \のcopy.bat』だから私はハードコードに、このようなそこにパスを持つことになった:

for %%i in ("*.xml") do start /separate /wait C:\DOS\copy.bat "%LOCAL_OUTGOING_PATH%\%%i" 

これは、それが最終的に働かせました

+0

引用符なしで '%PROGRAM_NAME% 'を使用したとします。あなたは '%PROGRAM_PATH%'を意味しましたか?そうでない場合、 'PROGRAM_NAME'の値は何ですか? – jdigital

+0

申し訳ありませんが、それはタイプミスでした。変数名も一致していることを確認しました。 – Andrew

+0

私はこれを(Win XPで)試してみました。 – jdigital

答えて

1

引用符で囲まれた最初のSTARTパラメータは、ウィンドウタイトルと見なされます。パラメータを指定したい場合は、パラメータを指定する必要があります。引用符で囲まれている場合は、最初にタイトルを入力する必要があります。空の場合でもタイトルを入力する必要があります。

または

for %%i in ("*.xml") do start "Win Title" /separate /wait "%PROGRAM_PATH%" "%LOCAL_OUTGOING_PATH%\%%i" 

START /?詳細については、

関連する問題