スケジュールされたタスクを作成するバッチ ファイルがあり、それが複数回実行される場合、それ以降のタスク作成の試行を無視するようにしたいと思います。タスクを強制的に作成して既存のタスクを上書きする /F パラメーターがあることは知っていますが、警告を抑制しながらタスクを上書きしない同等のオプションがあるかどうか疑問に思っています。
たとえば、これを 2 回実行するとします。
SCHTASKS /CREATE /SC ONLOGON /TN "Test" /TR "notepad.exe"
2 回目にプロンプトが表示されたら:
WARNING: The task name "Test" already exists. Do you want to replace it (Y/N)?
そのプロンプトを抑制したり、N と答えたりする方法はありますか? 私はこれを試しました:
ECHO N|SCHTASKS /CREATE /SC ONLOGON /TN "Test" /TR "notepad.exe"
しかし、エラーが発生します (意味がわかりません)。
ERROR: Invalid input. Valid values are (Y|N).
これは有効な解決策ですか、このエラーは無視しても問題ありませんか? それとも何か他のことをすべきでしょうか?
答え1
これを試すことができます:
<nul set /p="N" | SCHTASKS /CREATE /SC ONLOGON /TN "Test" /TR "notepad.exe"
これは、改行をエコーせずに N をコマンドにパイプします。