Я хочу сохранить запланированные задачи с помощью PowerShell.
Я пробовал это:
$taskpath = "\mytasks\" # all of my tasks are in this folder in Task Scheduler
$savefolder = "C:\tasks" # where I want to save the xml files
Get-ScheduledTask -TaskPath $taskpath | foreach { Export-ScheduledTask -TaskName $_.TaskName | Out-File (Join-Path $savefolder "$($_.TaskName).xml") }
Эти пути существуют.
Но я получаю такую ошибку: Export-ScheduledTask : The system cannot find the file specified.
Что я делаю не так?
Вы пропустили поставку TaskPath
в Export-ScheduledTask
командлет:
-TaskPath [<String>] Specifies the path for a scheduled task in Task Scheduler namespace. You can use \ for the root folder. If you do not specify a path, the cmdlet uses the root folder.
Использовать
$taskpath = "\mytasks\" # all of my tasks are in this folder in Task Scheduler
$savefolder = "C:\tasks" # where I want to save the xml files
Get-ScheduledTask -TaskPath $taskpath |
Foreach-Object {
$_.TaskName ### debugging output
Export-ScheduledTask -TaskName $_.TaskName -TaskPath $_.TaskPath |
Out-File (Join-Path $savefolder "$($_.TaskName).xml") }
Вместо указания конкретных TaskName
и TaskPath
параметры, вы можете передать InputObject
объект получен от Get-ScheduledTask
в Export-ScheduledTask
командлет, как в следующем фрагменте кода:
Get-ScheduledTask -TaskPath $taskpath |
Foreach-Object { $_ | Export-ScheduledTask |
Out-File (Join-Path $savefolder "$($_.TaskName).xml") }