Windows .cmd ファイルで複数のコンソール アプリケーションを起動するバッチ ファイルを作成する必要があります。これは、start コマンドを使用して実行できます。
ただし、コマンドにはパスが含まれています。また、スペースも含むパラメーターを渡す必要があります。これを行う方法?
例:バッチファイル
start "c:\path with spaces\app.exe" param1 "param with spaces"
Windows .cmd ファイルで複数のコンソール アプリケーションを起動するバッチ ファイルを作成する必要があります。これは、start コマンドを使用して実行できます。
ただし、コマンドにはパスが含まれています。また、スペースも含むパラメーターを渡す必要があります。これを行う方法?
例:バッチファイル
start "c:\path with spaces\app.exe" param1 "param with spaces"
実際、彼の例は機能しません(最初は機能すると思いましたが)。Startコマンドのヘルプに基づいて、最初のパラメーターは新しく作成されたコマンドプロンプトウィンドウの名前であり、2番目と3番目はそれぞれアプリケーションとそのパラメーターへのパスである必要があります。アプリへのパスの前に別の「」を追加すると、機能するはずです(少なくとも私にとっては機能しました)。次のようなものを使用します。
start "" "c:\path with spaces\app.exe" param1 "param with spaces"
最初の引数は、新しいコマンドプロンプトのタイトルに変更できます。作成されたのがWindowsアプリの場合、コマンドプロンプトは表示されず、タイトルは関係ありません。
アポストロフィを使用してパスをエスケープすることは正しいですが、start コマンドは新しいウィンドウのタイトルを含むパラメーターを取ります。このパラメータはアポストロフィで囲まれているため、アプリケーションは実行されません。
次のようなことを試してください:
start "Dummy Title" "c:\path with spaces\app.exe" param1 "param with spaces"
興味深いことに、Windows Embedded Compact 7 では、タイトル文字列を指定できないようです。最初のパラメーターは、コマンドまたはプログラムでなければなりません。
次のようなものを使用します。
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
例のように、パスと引数を引用符で囲みます。コマンドは、パラメーターが渡されるときに引用符を処理する必要がある場合がありますが、通常は大したことではありません。
私は首尾よく研究し、それは私にとってはうまくいっています。私の要件は、Windows のバッチ ファイルから呼び出す必要がある vbscript を使用して電子メールを送信することです。これは、エラーなしで使用している正確なコマンドです。
START C:\Windows\System32\cscript.exe "C:\Documents and Settings\akapoor\Desktop\Mail.vbs"