78

Windows .cmd ファイルで複数のコンソール アプリケーションを起動するバッチ ファイルを作成する必要があります。これは、start コマンドを使用して実行できます。

ただし、コマンドにはパスが含まれています。また、スペースも含むパラメーターを渡す必要があります。これを行う方法?

例:バッチファイル

start "c:\path with spaces\app.exe" param1 "param with spaces"
4

7 に答える 7

166

実際、彼の例は機能しません(最初は機能すると思いましたが)。Startコマンドのヘルプに基づいて、最初のパラメーターは新しく作成されたコマンドプロンプトウィンドウの名前であり、2番目と3番目はそれぞれアプリケーションとそのパラメーターへのパスである必要があります。アプリへのパスの前に別の「」を追加すると、機能するはずです(少なくとも私にとっては機能しました)。次のようなものを使用します。

start "" "c:\path with spaces\app.exe" param1 "param with spaces"

最初の引数は、新しいコマンドプロンプトのタイトルに変更できます。作成されたのがWindowsアプリの場合、コマンドプロンプトは表示されず、タイトルは関係ありません。

于 2008-09-16T14:18:17.663 に答える
16

アポストロフィを使用してパスをエスケープすることは正しいですが、start コマンドは新しいウィンドウのタイトルを含むパラメーターを取ります。このパラメータはアポストロフィで囲まれているため、アプリケーションは実行されません。

次のようなことを試してください:

start "Dummy Title" "c:\path with spaces\app.exe" param1 "param with spaces"
于 2008-09-16T14:16:13.207 に答える
1

興味深いことに、Windows Embedded Compact 7 では、タイトル文字列を指定できないようです。最初のパラメーターは、コマンドまたはプログラムでなければなりません。

于 2012-08-15T10:50:16.330 に答える
0

次のようなものを使用します。

start /d C:\Windows\System32\calc.exe

start /d "C:\Program Files\Mozilla

Firefox" firefox.exe start /d

「C:\Program Files\Microsoft」

Office\Office12" EXCEL.EXE

また、特別なバッチ ファイル エディタを使用することをお勧めします - Dr.Batcher

于 2010-01-05T11:31:24.103 に答える
-1

例のように、パスと引数を引用符で囲みます。コマンドは、パラメーターが渡されるときに引用符を処理する必要がある場合がありますが、通常は大したことではありません。

于 2008-09-16T14:13:33.043 に答える
-1

私は首尾よく研究し、それは私にとってはうまくいっています。私の要件は、Windows のバッチ ファイルから呼び出す必要がある vbscript を使用して電子メールを送信することです。これは、エラーなしで使用している正確なコマンドです。

START C:\Windows\System32\cscript.exe "C:\Documents and Settings\akapoor\Desktop\Mail.vbs"
于 2013-10-11T10:58:14.103 に答える