Commandes PowerShell
Aide-mémoire des cmdlets PowerShell par tâche : fichiers, processus, services, système, réseau, Active Directory et logiciels.
Cette fiche est un catalogue de commandes (cmdlets). Pour le langage (variables, boucles, fonctions, opérateurs), voir la cheatsheet PowerShell.
Découverte
| Cmdlet | Rôle |
|---|---|
Get-Command *net* |
chercher une cmdlet |
Get-Help <cmd> -Examples |
aide et exemples |
Get-Member |
propriétés et méthodes d'un objet |
Get-Alias |
correspondance alias ↔ cmdlet |
Fichiers et dossiers
| Cmdlet | Alias | Rôle |
|---|---|---|
Get-ChildItem |
ls, dir |
lister |
Set-Location |
cd |
se déplacer |
Get-Content |
cat |
lire un fichier |
Set-Content / Add-Content |
écrire / ajouter | |
New-Item -ItemType File|Directory |
créer | |
Copy-Item / Move-Item |
cp / mv |
copier / déplacer |
Remove-Item |
rm, del |
supprimer |
Rename-Item |
renommer | |
Test-Path |
l'élément existe-t-il ? | |
Select-String "motif" |
chercher dans un fichier (~ grep) |
Get-ChildItem C:\Logs -Recurse -Filter *.log
Get-Content app.log -Tail 20 -Wait # ~ tail -f
Processus
| Cmdlet | Rôle |
|---|---|
Get-Process |
lister les processus |
Get-Process <nom> |
filtrer par nom |
Stop-Process -Name <nom> |
arrêter par nom |
Stop-Process -Id <PID> |
arrêter par PID |
Start-Process <exe> |
lancer un programme |
Services
Get-Service # tous les services
Get-Service <nom> # un service
Start-Service <nom> ; Stop-Service <nom> ; Restart-Service <nom>
Set-Service <nom> -StartupType Automatic # démarrage auto
Système et infos
| Cmdlet | Rôle |
|---|---|
Get-ComputerInfo |
infos système complètes |
Get-Date |
date et heure |
Get-Volume / Get-Disk |
disques et volumes |
Get-Hotfix |
mises à jour installées |
Restart-Computer / Stop-Computer |
redémarrer / éteindre |
Rename-Computer -NewName <nom> |
renommer la machine |
Réseau
| Cmdlet | Rôle |
|---|---|
Get-NetIPAddress |
adresses IP |
Get-NetIPConfiguration |
config complète (~ ipconfig) |
Test-Connection <hôte> |
ping |
Test-NetConnection <hôte> -Port 443 |
tester un port |
Resolve-DnsName <domaine> |
résolution DNS (~ nslookup) |
Get-NetAdapter |
interfaces réseau |
New-NetIPAddress / Set-DnsClientServerAddress |
configurer IP / DNS |
Utilisateurs et Active Directory
Module requis :
Import-Module ActiveDirectory(RSAT / rôle AD DS).
| Cmdlet | Rôle |
|---|---|
Get-ADUser -Filter * |
lister les utilisateurs |
New-ADUser / Set-ADUser / Remove-ADUser |
gérer un utilisateur |
Enable-ADAccount / Disable-ADAccount |
(dés)activer |
Set-ADAccountPassword -Reset |
réinitialiser un mot de passe |
New-ADGroup / Add-ADGroupMember |
groupes |
Get-ADGroupMember <grp> |
membres d'un groupe |
New-ADOrganizationalUnit |
créer une OU |
Get-ADComputer -Filter * · Get-ADDomain |
ordinateurs · domaine |
Get-LocalUser / New-LocalUser |
comptes locaux (hors AD) |
Logiciels (winget)
winget search <nom> # chercher un logiciel
winget install <id> # installer
winget upgrade --all # tout mettre à jour
winget list # logiciels installés
winget uninstall <id> # désinstaller
Journaux et événements
| Cmdlet | Rôle |
|---|---|
Get-EventLog -LogName System -Newest 20 |
journal système (classique) |
Get-WinEvent -LogName Security -MaxEvents 20 |
journal (API récente) |
Get-WinEvent -FilterHashtable @{LogName='System'; Level=2} |
filtrer (erreurs) |
Clear-EventLog -LogName Application |
vider un journal |
Astuces
<cmd> | Format-Table/Format-List/Out-GridView: présenter la sortie.<cmd> | Export-Csv data.csv -NoTypeInformation: exporter.Get-History·↑: rejouer une commande ·F7: historique visuel.- Lancer en administrateur pour les tâches système et AD.
- Découvrir un objet inconnu :
<cmd> | Get-Member.
Pour le scripting (variables, if, foreach, fonctions), voir la cheatsheet PowerShell.