web-dev-qa-db-ja.com

Windows Server 2008 R2でスケジュールされたタスクでタスクの名前を変更する方法

Windows 2008 R2のタスクスケジューラにいくつかのタスクがあります。管理者として作成し、管理者としてログインしています。タスクの名前を変更する簡単な方法はありません。私ができる唯一の方法は、タスク構成をXMLファイルにエクスポートして新しいタスクに再インポートし、そこで名前を変更してから、古いタスクを削除することです。もっと簡単な方法はありますか?

130
Mark

おめでとうございます!多くのWindowsユーザー/管理者を悩ませてきた問題に直面しました。いいえ、エクスポート、名前変更、インポートを除いて、タスクの名前を変更することはできません。はい、それはかなりばかげています。おそらく、進取的なスクリプターがこれを自動化する簡単なPowerShellスクリプトを作成できるかもしれませんが、それまでは、エクスポート/インポートの2つのステップで立ち往生しています。ごめんなさい。 =(

(作成したタスクフォルダーの名前を変更することもできません。)

141
Wesley

最善の方法ではありませんが、命を救うことができます。

タスクはC:\Windows\System32\Tasksに、schtasks.exeを使用してインポート可能なXML形式で保存されます。 Weaslyが言ったように、ファイル名の変更は機能しませんが、作成/削除は機能します。とはいえ、実行中のユーザーパスワード(持っているもの)が必要です。

Weaslyの提案と比較すると、エクスポートフェーズがスキップされるだけです。

  1. 最初のタスクをテンプレートとして使用して2番目のタスクを作成する
  2. オリジナルを削除

srcnamedstnameおよびadmin ShellをTasksフォルダーで使用する:

C:\Windows\System32\Tasks>schtasks /Create /tn dstname /xml srcname /ru [running username] /rp [password]
SUCCESS: The scheduled task "dstname" has successfully been created.

C:\Windows\System32\Tasks>schtasks /delete /tn srcname /f
SUCCESS: The scheduled task "srcname" was successfully deleted.

ノート:

  • 少しのスクリプトで、大量のタスクの名前を簡単に変更できます
  • 必要に応じて、XMLから元のRUを抽出できるはずです(ノードTask/Principals/Principal/UserId内)
  • Schtasksにパスワードを要求する場合は、/rp [password]部分を削除するだけです
9
Damien

残念ながら違います。これが現在行われている方法です。私はそれがセキュリティの目的であると私は信じているので、設定されたタスクは実際に設定され有効になっている間は変更できません。

5
JohnThePro

「できません」「不可」などとお答えになる前に必ずご確認ください。

チェックアウト このパワーシェルスクリプト

3
Tom Shaeffer

1つの可能性は、タスクをエクスポートし、タスクを削除し、ファイルの名前を変更して、再度インポートすることです。

良い説明はここにあります: タスクスケジューラでタスクの名前を変更する

2