1

ATコマンドを使用してインタラクティブでかなり長時間のアクティビティをスケジュールする(そして後でそれらが生成するプロセスを強制終了する)WinXPバッチファイルを適応させて、Win7のバージョンのSCHTASKSを使用します(Win7のATはサポートされなくなったため)/interactiveフラグ) 、例えば翻訳

at 00:59 /interactive /every:Monday "h:\bin\scrape.bat"

at 03:02 /interactive /every:Monday "h:\bin\kill_scrape.bat"

次のようなものに:

schtasks /Create /TN SCRAPER /IT /ST 00:59 /K /ET 03:02 /ST: 04:02\

              /SC WEEKLY /D MON /TR "h:\bin\scrape.bat"

...スケジューラを直接使用してスケジュールされたアクティビティを強制終了するため、これはより簡単に思えます(またはでどのように/K機能する/ETかを理解していれば/DU。上記は機能しますが、タスクはデフォルトの10分間隔で繰り返されます。オプションを使用/RIすると、これに最大 122 分の繰り返し間隔を与えることができます...しかし、それでも {122 秒} 分で繰り返すことができます。私はそれを望んでいません...翻訳する行がたくさんあり、とにかく、私の elisp は、すべてのタスクの所要時間から 1 分を差し引くのに十分ではありません.スケジュールされたタスクの繰り返しを避けるために、SCHTASKS にオプションはありますか?どうもありがとうございました.

4

2 に答える 2

0

必要なのは、スケジュール オプション ( /SC) だと思います。有効な時限オプションはdaily, weekly monthly, 'minute', 'hourly' で、明らかな効果があります。

タスクを一度だけ実行したい場合は、/SC onceいつでも実行できます。オプションを追加する/Zと、タスクも削除されます。

/RIこれらのオプションのいずれもニーズに正確に適合しない場合は、 (実行間隔) スイッチを使用して、タスクを繰り返す正確な分数を設定できるはずです。XP での最大間隔はわかりませんが、少なくとも 1 日である必要があり、Windows 7 での最大間隔は 599940 分、つまり 416 日です。

あなたが望むものの例はこれです:

schtasks /Create /TN SCRAPER /IT /ST 01:00 /ET 03:01 /K /SC WEEKLY /D MON /TR "h:\bin\scrape.bat"
schtasks /Create /TN ender /IT /ST 3:00 /K /SC WEEKLY /D MON /TR "h:\bin\end.bat"

scrape.bat初期プログラムはどこにあり、end.batすべてのプロセスを強制終了します。

于 2013-12-08T12:15:26.933 に答える