web-dev-qa-db-ja.com

引用符が機能しないタスクスケジューラの引数

サンプルrun.batファイル

echo "Test"
echo %1
echo %2
set /p DUMMY=Hit ENTER to continue...

したがって、このbatファイルは、与えられた最初の2つの引数を出力します。引数にはスペースが含まれる場合と含まれない場合があります。そのために、私は二重引用符でそれらをエスケープしました。

run.bat -test "arg2 d"

コマンドラインから呼び出すと、完全に正常に機能しました。

タスクスケジューラを介してそのバットをスケジュールしたかった。ただし、タスクスケジューラは、cmdウィンドウを開き、すぐに閉じます。

機能していません

enter image description here

作業中

Task Image

引数の引用符に注意してください。それが問題の原因です。では、どうすればスペースで引数をエスケープできますか。

また、プログラム/スクリプトファイルの場所が引用符なしで入力されている場合、引数は機能しています。ただし、そのためには、スクリプトをスペースのないフォルダーに配置する必要があります。

アクションのエラー

enter image description here

したがって、ファイルパスにスペースを含み、スペースを含む引数を使用してタスクを作成する方法も説明します。

これはWindows10でのみ発生します。Windows7では正常に動作しています。

4
Madhan

同様の問題がありました。 Server 2012R2でスケジュールされたタスクを実行していました。タスクのドロップダウンを2008ではなくWindows2012に変更する必要があり、機能しているように見えました。たぶん、Win10ではタスクで2012を選択する必要があります。

1
user10881429