0% ont trouvé ce document utile (0 vote)
8 vues4 pages

TP PowerShell Administration

Ce document présente un TP sur l'utilisation de PowerShell pour l'administration système et le traitement de fichiers. Les objectifs incluent la manipulation de commandes, l'automatisation de tâches, la gestion des utilisateurs et l'exploitation de fichiers CSV. Il contient des exercices pratiques pour créer des scripts PowerShell afin de gérer des services, des utilisateurs et des données de fichiers CSV.

Transféré par

baybaysalah
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
8 vues4 pages

TP PowerShell Administration

Ce document présente un TP sur l'utilisation de PowerShell pour l'administration système et le traitement de fichiers. Les objectifs incluent la manipulation de commandes, l'automatisation de tâches, la gestion des utilisateurs et l'exploitation de fichiers CSV. Il contient des exercices pratiques pour créer des scripts PowerShell afin de gérer des services, des utilisateurs et des données de fichiers CSV.

Transféré par

baybaysalah
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

TP : Commandes de base

d'administration et traitement de
fichiers avec PowerShell
Objectifs du TP
- Manipuler les commandes d'administration système avec PowerShell.

- Automatiser des tâches simples liées à la gestion des utilisateurs, des services, et des fichiers.

- Lire et exploiter des fichiers CSV structurés.

- Intégrer des commandes dans un script automatisé.

Contexte
Vous êtes technicien en administration système. Vous devez automatiser plusieurs tâches pour
le bon fonctionnement d’un poste de travail sous Windows : surveillance, gestion d'utilisateurs,
manipulation de fichiers de journalisation, etc.

Partie 1 : Commandes de base d’administration


1. Listez tous les services disponibles sur votre machine.

Get-Service
2. Listez tous les processus en cours.

Get-Process
3. Créez un point de restauration système.

Checkpoint-Computer -Description "TP-Restauration"


4. Créez un fichier texte et ajoutez-y du contenu.

New-Item -Path "C:\TP" -ItemType Directory


New-Item -Path "C:\TP\[Link]" -ItemType File
Add-Content -Path "C:\TP\[Link]" -Value "Configuration initiale"

Partie 2 : Gestion des comptes locaux


1. Créez un utilisateur local nommé stagiaire.

New-LocalUser -Name "stagiaire" -Password (ConvertTo-SecureString


"P@ssw0rd" -AsPlainText -Force)
2. Activez le compte utilisateur stagiaire.

Enable-LocalUser -Name "stagiaire"


3. Ajoutez cet utilisateur au groupe Administrateurs.

Add-LocalGroupMember -Group "Administrators" -Member "stagiaire"

Partie 3 : Lecture et manipulation de fichiers CSV


On vous fournit un fichier `[Link]`.

Contenu exemple :

Prénom,Nom,Department,Salaire
Ali,Benali,Production,5500
Zahra,El Amrani,Marketing,4900
1. Lire les données du fichier.

Import-Csv -Path "./[Link]"


2. Afficher uniquement les employés du département Production.

Import-Csv -Path "./[Link]" | Where-Object {$_.Department -eq


'Production'}
3. Afficher le prénom du premier employé.

Import-Csv -Path "./[Link]" | Select-Object -First 1 | Select-


Object -ExpandProperty 'Prénom'

Partie 4 : Script complet d'automatisation


Écrire un script PowerShell `tp_admin.ps1` qui :
- Crée un dossier de logs
- Lit un fichier CSV
- Filtre les données selon le département
- Enregistre les résultats filtrés dans un nouveau fichier CSV
# Création du dossier logs
New-Item -Path "C:\TP\Logs" -ItemType Directory -Force

# Lecture et filtrage
$employes = Import-Csv -Path "C:\TP\[Link]"
$filtre = $employes | Where-Object { $_.Department -eq "Production" }

# Sauvegarde
$filtre | Export-Csv -Path "C:\TP\Logs\employes_production.csv" -
NoTypeInformation
Write-Host "Export terminé."

Partie 5 : Mise en œuvre des commandes PowerShell dans un script


Un script PowerShell est un fichier (extension .ps1) qui contient une suite de commandes à
exécuter automatiquement. Il permet de mettre en œuvre les quatre briques algorithmiques
suivantes :

1. La gestion des variables – pour stocker des valeurs intermédiaires ;


2. La lecture/écriture – pour interagir avec des fichiers ou afficher des résultats ;

3. Les conditions – pour prendre des décisions (if, switch) ;

4. Les boucles – pour répéter des actions (for, foreach, while).

🔹 Exercice 1

Objectif : Créer un script interactif qui filtre des données selon un critère saisi.

Consigne :

Écrire un script PowerShell qui :

 Demande à l'utilisateur un nom de département (via Read-Host)

 Lit un fichier [Link]

 Affiche uniquement les employés appartenant à ce département

Exemple de script :

# Lire le département entré par l'utilisateur

$dept = Read-Host "Entrez le nom du département"

# Charger les données depuis le fichier CSV

$employes = Import-Csv -Path "C:\TP\[Link]"

# Filtrer et afficher les résultats

$filtre = $employes | Where-Object { $_.Department -eq $dept }

$filtre | Format-Table

🔶 Exercice 2

Objectif : Traiter dynamiquement plusieurs fichiers CSV et faire des calculs.

Consigne :

Écrire un script PowerShell qui :

 Parcourt tous les fichiers CSV d’un dossier (C:\TP\data)

 Calcule la moyenne des salaires pour chaque fichier


 Affiche pour chaque fichier : son nom + la moyenne calculée

Exemple de script :

# Récupérer tous les fichiers CSV du dossier

$fichiers = Get-ChildItem -Path "C:\TP\data" -Filter *.csv

# Parcourir chaque fichier

foreach ($f in $fichiers) {

# Importer les données du fichier

$data = Import-Csv -Path $[Link]

# Calculer la moyenne des salaires

$moyenne = ($data | Measure-Object -Property Salaire -Average).Average

# Afficher le nom du fichier et la moyenne

Write-Host "Fichier: $($[Link]) - Moyenne des salaires: $moyenne"

Vous aimerez peut-être aussi