如何备份Windows任务计划程序任务?

我需要备份任务计划任务。 这些已被分组到Task Scheduler中的一个子文件夹中。 但我发现的唯一方法就是使用

schtasks.exe /query /tn "<path>\<taskname>" 

因此,我必须指定每一个任务…但是这些可能在不同的机器上是不同的。

我正在寻找一种简单的方法来使用通配符。 例如

 schtasks.exe /query /tn "<path>\*" 

有没有办法,去

  • 没有出口整个名单? (我真的不在乎微软自己的任务像\微软\ Windows \ Wininet \ CacheTask)
  • 导出整个文件夹?

使用Powershell。 在Windows Server 2008 R2上,您可以使用以下代码;

 $x = New-Object -ComObject("Schedule.Service") ; $x.Connect() ; $x.GetFolder("\CustomTasks").GetTasks(1) | % {$_.XML | Out-File "C:\temp\$($_.Name).xml"} 

这将导出“CustomTasks”文件夹下的所有任务到C:\ Temp文件夹,文件名将是“WhateverTheTaskNameIs.xml”。

对于Windows Server 2012及更高版本,可以使用Get-ScheduledTaskExport-ScheduledTask cmdlet。