SAUVEGARDER LES POSTES AD
(PowerShell)

# ==================================================================================================
# NAME: SAUVEGARDE_POSTE_UTILISATEURS.ps1
# AUTHOR: Nicolas IGUINIZ
# DATE: 20/03/2021
#
# KEYWORDS: Save, Poste, Active Directory
# VERSION 1.0
# COMMENTS: Sauvegarde des postes utilisateurs allumé sur le réseau et membre du domaine ACME.local
# ==================================================================================================

# Recuperation de la liste des postes
$postes = Get-ADComputer -Filter 'Name -like "POSTE-*"' | Select -ExpandProperty Name

# Récupération de la liste des utilisateurs
$users = Get-ADUser -Filter 'Surname -like "*"' | Select -ExpandProperty SamAccountName

# Récupérer la date
$date = Get-Date -Format "yyyyMMdd"
try
{
       # Lancer la sauvegarde dans une boucle qui va recupérer les dossiers utilisateurs membre de l'AD dans chaque postes et crée un dossier au nom du poste et à la date de la création
       Foreach ($poste in $postes)
       {
            if (Test-Connection -ComputerName $poste -count 1 -quiet)
            {
            # Création du dossier de sauvegarde
            New-Item -Path C:\SAV\"$poste $date" -itemType Directory

            #Boucle des Utilisateurs
            Foreach ($user in $users)
                {
                if (Test-Path \\SRVACME\$user)
                    {      
                    # Copie du dossier de chaque utilisateurs dans le dossier de de sauvegarde crée précédament
                    Copy-Item \\$poste\C$\Users\$user C:\SAV\"$poste $date" -force -recurse -verbose
                    }
                }
           }
           
       }
}


catch
{
Write-Output $_ 
Write-Warning "Une erreur s'est produite et le processus n'est pas aller à son terme"
exit 1
}