サンプルrun.batファイル
echo "Test"
echo %1
echo %2
set /p DUMMY=Hit ENTER to continue...
したがって、このbatファイルは、与えられた最初の2つの引数を出力します。引数にはスペースが含まれる場合と含まれない場合があります。そのために、私は二重引用符でそれらをエスケープしました。
run.bat -test "arg2 d"
コマンドラインから呼び出すと、完全に正常に機能しました。
タスクスケジューラを介してそのバットをスケジュールしたかった。ただし、タスクスケジューラは、cmdウィンドウを開き、すぐに閉じます。
機能していません
作業中
引数の引用符に注意してください。それが問題の原因です。では、どうすればスペースで引数をエスケープできますか。
また、プログラム/スクリプトファイルの場所が引用符なしで入力されている場合、引数は機能しています。ただし、そのためには、スクリプトをスペースのないフォルダーに配置する必要があります。
アクションのエラー
したがって、ファイルパスにスペースを含み、スペースを含む引数を使用してタスクを作成する方法も説明します。
これはWindows10でのみ発生します。Windows7では正常に動作しています。
同様の問題がありました。 Server 2012R2でスケジュールされたタスクを実行していました。タスクのドロップダウンを2008ではなくWindows2012に変更する必要があり、機能しているように見えました。たぶん、Win10ではタスクで2012を選択する必要があります。