2

現在、サーバー2008ボックスのWindowsタスクスケジューラで数百のタスクがスケジュールされています。30分ごとに無期限に実行されているタスクがいくつかあります。スクリプトを使用してこれらのタスクのトリガーを変更し、MFが30分ごとにのみ実行されるようにする方法はありますか?

4

2 に答える 2

2

はい、TaskServiceCOMオブジェクトを使用する場合は可能です。このオブジェクトを使用するスクリプトの例については、以下を参照してください。

  1. Windows 7、Windows Server 2008、およびWindowsVistaでスケジュールされたタスクの名前を変更する

  2. ハウツー:PowerShellを使用してスケジュールされたタスクについてレポートする

  3. スケジュールされたタスクの資格情報の更新

    スクリプト:https ://gist.github.com/Bill-Stewart/363fdf761499a071439c8ac0c18dcd54

schtasks.exeユーティリティの使用は、Windows XP /Server2003以降ではかなり制限されています。

于 2013-03-13T18:31:25.127 に答える
2

/SCで許可されているオプションは次のとおりです。

/SC allows for the following frequency schedules:
        MINUTE:     1 - 1439 minutes.
        HOURLY:     1 - 23 hours.
        DAILY:      1 - 365 days.
        WEEKLY:     weeks 1 - 52. (/D MON,TUE,WED,THU,FRI,SAT,SUN)
        ONCE:       No modifiers.
        ONSTART:    No modifiers.
        ONLOGON:    No modifiers.
        ONIDLE:     No modifiers.
        MONTHLY:    1 - 12, or FIRST, SECOND, THIRD, FOURTH, LAST, LASTDAY.**

私は自分の発見に満足していないので、これを編集し続けます...

SCHTASKSを調べたところ、CMDを使用してスケジュールを変更できないことに気付きました。

technet.microsoft から
タスクの次のプロパティの1つ以上を変更します。

  • タスクが実行するプログラム(/ tr)。
  • タスクを実行するユーザーアカウント(/ ru)。
  • ユーザーアカウントのパスワード(/ rp)。

私はこれについていくつかの調査を続けるつもりであり、うまくいけば、実行可能な解決策でこの答えを編集するでしょう。

編集
C:\ windows \ system32 \ tasksを見ると、スケジュールされたすべてのタスクが見つかります。それらはXMLとしてリストされていませんが、実際にはXMLです。VBSまたはC#アプリケーションは、次の各ノードを掘り下げて
// Task / Triggers /CalendarTriggerを削除して/ScheduleByDayを削除し、その子ノード/ DaysInterval // Task / Triggers/CalendarTriggerを使用して次を作成します。

 <?xml version="1.0" encoding="UTF-16"?>
   -<Task xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task" version="1.2"> 
     +<RegistrationInfo> 
     -<Triggers> 
       -<CalendarTrigger>
            <StartBoundary>2013-03-13T15:20:00</StartBoundary>
            <Enabled>true</Enabled> 
             -<ScheduleByWeek> 
               -<DaysOfWeek> 
                    <Monday/>
                    <Tuesday/> 
                    <Wednesday/> 
                    <Thursday/> 
                    <Friday/> 
                </DaysOfWeek>
                <WeeksInterval>1</WeeksInterval> 
              </ScheduleByWeek> 
       </CalendarTrigger> 
     </Triggers>

誰かがこれを手に取って実行できるなら、私は来週これで多くをすることができるとは思わない。

于 2013-03-13T19:15:11.113 に答える