Jak eksportować zaplanowane zadania za pomocą programu PowerShell

Lubimy przenosić wszystkie zaplanowane zadania na inny serwer lub komputer. Zamiast eksportować zaplanowane zadania indywidualnie w Harmonogramie zadań, lepiej jest uruchomić skrypt PowerShell, aby zbiorczo wyeksportować wszystkie zadania. Znakomicie jest także uruchomić skrypt i zapisać zaplanowane zadania w celu wykonania kopii zapasowej. W tym artykule dowiesz się, jak eksportować zaplanowane zadania za pomocą programu PowerShell.

Eksportuj zaplanowane zadanie w Harmonogramie zadań

Nie ma możliwości wyeksportowania wielu lub wszystkich zaplanowanych zadań z programu Harmonogram zadań. Można wyeksportować tylko jeden harmonogram zadań.

Wybierz wszystkie zadania w Harmonogramie zadań i nie ma opcji eksportu.

Wybierz pojedyncze zadanie w Harmonogramie zadań i możesz wyeksportować to zadanie.

Jeśli masz wiele zaplanowanych zadań, może to być bardzo czasochłonne. Jakie jest zatem lepsze podejście? PowerShell na ratunek.

Eksportuj wszystkie zaplanowane zadania za pomocą programu PowerShell

Aby wyeksportować wszystkie zaplanowane zadania, użyjemy plikuUzyskaj zaplanowane zadaniePolecenie cmdlet programu PowerShell w celu ich pobrania i plikuZaplanowane eksportowanie zadaniaPolecenie cmdlet programu PowerShell, aby je wyeksportować.

Przyjrzyjmy się temu w następnym kroku.

Pobierz skrypt PowerShell Export-SchedTasks

Utwórz dwa foldery na(C:)prowadzić:

Zobacz także:Sprawdzony sposób zapobiegania tworzeniu nowych zaplanowanych zadań w systemie Windows 11

  • Skrypty
  • Zadania

Pobierz i umieść skrypt PowerShell Export-SchedTasks.ps1 w plikuC: Skryptyfalcówka. Skrypt wyeksportuje wszystkie zaplanowane zadania do plikuC: Zadaniafalcówka.

Notatka:Nie wyeksportuje folderu Microsoft zawierającego zaplanowane zadania, ponieważ są to zadania domyślne.

Upewnij się, że plik jest odblokowany, aby zapobiec błędom podczas uruchamiania skryptu. Przeczytaj więcej w artykule Błąd braku podpisu cyfrowego podczas uruchamiania skryptu PowerShell.

Inną opcją jest skopiowanie i wklejenie poniższego kodu do Notatnika. Podaj nazwęEksportuj-SchedTasks.ps1i umieść go wC: Skryptyfalcówka.

<#
    .SYNOPSIS
    Export-SchedTasks.ps1

    .DESCRIPTION
    Export Windows Scheduled Tasks on Windows Server and Windows Clients for backup purposes.

    .LINK
    www.alitajran.com/export-scheduled-tasks-powershell/

    .NOTES
    Written by: ALI TAJRAN
    Website:    www.alitajran.com
    LinkedIn:   linkedin.com/in/alitajran

    .CHANGELOG
    V1.00, 12/08/2023 - Initial version
#>

# Define the backup path
$backupPath = "C:Tasks"

# Get the unique task folders from the scheduled tasks
$taskFolders = (Get-ScheduledTask).TaskPath | Where-Object { ($_ -notmatch "Microsoft") } | Select-Object -Unique

# Start exporting of scheduled tasks
Write-Host "Start exporting of scheduled tasks." -ForegroundColor Cyan

# Check if the backup path exists
if (Test-Path -Path $backupPath) {
    Write-Host "Folder already exists: $backupPath" -ForegroundColor Yellow
}
else {
    # Create the backup path if it doesn't exist
    New-Item -ItemType Directory -Path $backupPath | Out-Null
    Write-Host "Backup path created: $backupPath" -ForegroundColor Green
}

# Loop through each task folder
foreach ($taskFolder in $taskFolders) {
    Write-Host "Task folder: $taskFolder" -ForegroundColor Cyan

    # Check if the task folder is not the root folder
    if ($taskFolder -ne "") {
        $folderPath = "$backupPath$taskFolder"

        # Create the task folder in the backup path if it doesn't exist
        if (-not (Test-Path -Path $folderPath)) {
            New-Item -ItemType Directory -Path $folderPath | Out-Null
        }
        else {
            Write-Host "Folder already exists: $folderPath" -ForegroundColor Yellow
        }
    }

    # Get the tasks in the task folder
    $tasks = Get-ScheduledTask -TaskPath $taskFolder -ErrorAction SilentlyContinue

    # Loop through each task in the task folder
    foreach ($task in $tasks) {
        $taskName = $task.TaskName

        # Export the task and save it to a file
        $taskInfo = Export-ScheduledTask -TaskName $taskName -TaskPath $taskFolder
        $taskInfo | Out-File "$backupPath$taskFolder$taskName.xml"
        Write-Host "Saved file $backupPath$taskFolder$taskName.xml" -ForegroundColor Cyan
    }
}

# Exporting of scheduled tasks finished
Write-Host "Exporting of scheduled tasks finished." -ForegroundColor Green

Tak to wygląda.

Uruchom skrypt PowerShell Eksportuj zaplanowane zadania

Uruchom skrypt PowerShell Export-SchedTasks.ps1, aby uzyskać wszystkie zaplanowane zadania i wyeksportować je do plików XML wC: Zadaniafalcówka.

C:scripts.Export-SchedTasks.ps1

Dane wyjściowe pokazują:

Start exporting of scheduled tasks.
Backup path created: C:Tasks
Task folder: 
Saved file C:TasksCreateExplorerShellUnelevatedTask.xml
Saved file C:TasksMicrosoftEdgeUpdateTaskMachineCore{68B94FCC-61AA-45EA-B214-C666C5A7C344}.xml
Saved file C:TasksMicrosoftEdgeUpdateTaskMachineUA{B5BEDAA1-3440-4D7D-A459-0A8C98600F11}.xml
Saved file C:TasksUser_Feed_Synchronization-{D86918D5-2FFC-4B1D-9AF1-0B66C68F64B2}.xml
Saved file C:Taskswin-acme renew (acme-v02.api.letsencrypt.org).xml
Task folder: Mozilla
Saved file C:TasksMozillaFirefox Background Update 308046B0AF4A39CB.xml
Saved file C:TasksMozillaFirefox Default Browser Agent 308046B0AF4A39CB.xml
Exporting of scheduled tasks finished.

Sprawdź pliki XML zaplanowanych zadań

Skrypt PowerShell Export-SchedTasks.ps1 zbiorczo eksportuje wszystkie zadania do plików XML. Znajdź pliki XML w ścieżceC: Zadania.

Otwórz plik XML ze swoją ulubioną aplikacją. Na przykład Microsoft Edge, Notatnik lub Notepad++.

Plik XML wygląda doskonale.

Czy pomogło Ci to w utworzeniu kopii zapasowej zaplanowanych zadań za pomocą programu PowerShell w plikach XML?

Wniosek

Nauczyłeś się, jak eksportować zaplanowane zadania za pomocą programu PowerShell. Najpierw uruchom skrypt PowerShell Export-SchedTasks. Następnie przejdź do folderu eksportu, aby sprawdzić wszystkie wyeksportowane zaplanowane zadania w plikach XML. Skrypt działa dla systemu Windows Server i klientów Windows.

Czy podobał Ci się ten artykuł? Konfiguracja poinstalacyjna systemu Windows Server może Ci się spodobać. Nie zapomnij nas obserwować i udostępnić ten artykuł.

Related Posts