🔹 Modules

Import d’un module

Import-Module ActiveDirectory
Import-Module Az

Lister les modules installés

Get-Module -ListAvailable

Lister les commandes d’un module

Get-Command -Module ActiveDirectory
Install-Module -Name PSReadLine -Scope CurrentUser

🔹 Cmdlets essentielles

Trouver une commande

Get-Command *process*

Aide intégrée

Get-Help Get-Process
Get-Help Get-Process -Examples

Objet & Propriétés

Get-Service | Select-Object Name, Status

Filtrer

Get-Process | Where-Object { $_.CPU -gt 10 }

Trier

Get-Process | Sort-Object CPU -Descending

🔹 Pipelines

Le pipeline passe des objets, pas du texte :

Get-Service | Where-Object { $_.Status -eq "Running" } | Select-Object Name

Compter les éléments

Get-Process | Measure-Object

Pipeline avec export

Get-Process | Export-Csv "process.csv" -NoTypeInformation

🔹 Manipulation de fichiers & dossiers

Lister les fichiers

Get-ChildItem "C:\Logs"

Lire un fichier

Get-Content "notes.txt"

Écrire dans un fichier

"Hello PowerShell" | Out-File "test.txt

Ajouter du texte

Add-Content -Path "test.txt" -Value "Nouvelle ligne"

Copier / Déplacer / Supprimer

Copy-Item "source.txt" "backup\source.txt"
Move-Item "source.txt" "archive\"
Remove-Item "old.txt"

Créer un dossier

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

🔹 Manipulation JSON

Lire un fichier JSON

$data = Get-Content "config.json" | ConvertFrom-Json
$data.Server.Name

Modifier et réécrire un JSON

$data.Version = "2.0"
$data | ConvertTo-Json | Set-Content "config.json"

🔹 Manipulation REST API

GET

Invoke-RestMethod -Uri "https://api.example.com/users"

POST

Invoke-RestMethod -Uri "https://api.example.com/login" -Method Post -Body @{
    user = "admin"
    pass = "1234"
}

🔹 Gestion des Processus & Services

Processus

Get-Process
Stop-Process -Name "notepad"

Services

Get-Service
Restart-Service -Name "Spooler"