こんにちは、今日はタスクスケジューラでPowerShellスクリプト実行時にウィンドウを表示しないようにする方法についてまとめていきます。
確認環境
タスク スケジューラ バージョン: 1.0
JScriptから呼び出す
以下の内容のスクリプトを拡張子jsで保存します。
shell = WScript.createObject("WScript.Shell");
path = "powershell -ExecutionPolicy RemoteSigned -File " + WScript.Arguments.Item(0)
ret = shell.Run(path, 0, true);
WScript.Quit(ret);
タスクスケジューラのタスクのプロパティの操作タブにて、
プログラム/スクリプトに上記スクリプトを指定します。
ex) C:\Tasks\task.js
引数の追加に呼び出したいps1ファイルを指定します。
ex) C:\Tasks\task.ps1
開始にはスクリプトあるディレクトリを指定しておくと、そのディレクトリがカレントディレクトリになります。
ex) C:\Tasks
リンク
WshShell Object | Microsoft Docs
https://docs.microsoft.com/en-us/previous-versions//aew9yb99(v=vs.85)
Run Method (Windows Script Host) | Microsoft Docs
https://docs.microsoft.com/en-us/previous-versions//d5fk67ky(v=vs.85)