19

次の場所にあるバッチ ファイルを実行しようとしています。

C:\Test Batch\BatchTest.bat

それは別の指定された場所からファイルをコピーします、としましょう

C:\Users\UserName\Desktop\Company Downloads\downloadedDoc.doc

バッチファイルを次のように実行できます。

cmd  /c start "" "C:\Test Batch\TestBatch.bat"

そして、バッチは実際に実行されます。

しかし、次のようにコピーするための引数を追加しようとすると:

cmd  /c start "" "C:\Test Batch\TestBatch.bat" "C:\Users\User Name\Desktop\Company Downloads\downloadedDoc.doc"

私は得る:

'C:\Test' is not recognized a an internal or external command, operable program or batch file.

最終的に、コピーするバッチ ファイルとファイルはユーザーによって指定され、名前またはパスにスペースが含まれている可能性があります。したがって、スペースのないパスを使用するという単純な答えでは不十分です。

4

2 に答える 2

11

によって開始される既知の機能です。これは、コマンドの名前またはパスにスペースが含まれていて、少なくとも 1 つの引数が引用符で囲まれている場合にのみ発生します。cmd.exestart.exe

回避策は、コマンドをcall.

start "" CALL "C:\Test Batch\TestBatch.bat" "C:\Users\User Name\down.doc"
于 2013-09-18T18:30:31.033 に答える