1

タスク スケジューラ ジョブを無効にする (.bat ファイルを内部的に無効にする) ために実行できる PowerShell スクリプトを探しています。Powershellスクリプトを使用して実行できますか?

どんな助けでも大歓迎です!!

4

3 に答える 3

3

CSV 形式の出力を備えた便利な SCHTASKS 実行可能ファイルを使用して、スケジュールされたすべてのタスク情報を含むオブジェクトを取得することから始めます。

$tasks = & SCHTASKS /Query /V /FO CSV | ConvertFrom-Csv

パラメータのマジック デコーダ リング: /Query は操作、/V は詳細出力、/FO CSV は出力形式です。これでオブジェクトになったので、探しているタスクを見つけるために簡単にフィルタリングできます。

$task = $tasks | ? { $_.TaskName -eq "My Batch File" }

これにより、再度 SCHTASKS 実行可能ファイルを使用して、タスクを簡単に有効または無効にすることができます。

& SCHTASKS /Change /DISABLE /TN "$Task.TaskName"

/DISABLE を /ENABLE に置き換えるだけで、同じコードを使用してタスクを簡単に再度有効にすることができます。SCHKTASKS は、スケジュールされたタスクの作成と操作に使用できる非常に強力なツールです。

参照: http://msdn.microsoft.com/en-us/library/windows/desktop/bb736357.aspx

于 2012-07-05T23:29:49.647 に答える
1

Windows Server 2008 以降では、SCHTASKSまたは COM オブジェクトを使用Schedule.Serviceして、よりオブジェクト指向の方法でタスクを操作できます。との両方を使用する例については、http://letitknow.wordpress.com/2011/05/20/create-scheduled-task-by-using-powershell/ を参照てください。タスク スケジューラの COM インターフェイスは、 http://msdn.microsoft.com/en-us/library/aa383608( v=vs.85 )で文書化されています。SCHTASKSSchedule.Service

于 2012-07-06T10:55:12.130 に答える
0

Windows 2012 / 8.1 以降のみ https://technet.microsoft.com/en-us/library/jj649816%28v=wps.630%29.aspx

于 2015-07-13T08:28:44.910 に答える