Astuces et Techniques de Scripting PowerShell et Batch pour les Sysadmins1
En tant que sysadmin, vous passez probablement beaucoup de temps à travailler avec des scripts PowerShell et Batch pour automatiser des tâches sur des serveurs et des PC. Pour vous aider à devenir encore plus efficace dans votre travail, nous avons rassemblé ci-dessous quelques astuces et techniques avancées qui ne sont peut-être pas très connues.
PowerShell
- Utilisez les fonctions avancées, y compris les fonctions paramétrées, les paramètres facultatifs et les valeurs par défaut pour créer des scripts plus flexibles et réutilisables. Par exemple, pour créer une fonction PowerShell qui prend un nom et une ville en tant que paramètres, tapez :
function SayHello($Name, $City) {
Write-Host "Bonjour $Name de $City"
}
SayHello -Name "Alice" -City "Paris"
- Utilisez la commande
Where-Object
pour filtrer des objets dans une pipeline. Par exemple, pour afficher tous les processus en cours d’exécution dont le nom contient “explorer”, tapez :
Get-Process | Where-Object { $_.Name -like "*explorer*" }
- Utilisez la commande
Select-Object
pour sélectionner des propriétés spécifiques d’un objet dans une pipeline. Par exemple, pour afficher le nom et l’utilisation CPU de tous les processus en cours d’exécution, tapez :
Get-Process | Select-Object Name, CPU
- Utilisez la commande
Get-Member
pour afficher les propriétés et les méthodes d’un objet. Par exemple, pour afficher les propriétés et les méthodes de l’objet processus, tapez :
Get-Process | Get-Member
- Utilisez la commande
New-Item
pour créer des fichiers et des répertoires. Par exemple, pour créer un nouveau répertoireC:\Temp\NewFolder
, tapez :
New-Item -ItemType Directory -Path C:\Temp\NewFolder
Batch
- Utilisez les variables d’environnement, y compris
%USERPROFILE%
pour le répertoire de profil utilisateur,%COMPUTERNAME%
pour le nom de l’ordinateur,%TEMP%
pour le répertoire temporaire, et%PATH%
pour les emplacements de fichiers exécutables. Par exemple, pour afficher le répertoire de profil utilisateur, tapez :
echo %USERPROFILE%
- Utilisez la commande
for /f
pour lire le contenu d’un fichier ligne par ligne. Par exemple, pour afficher le contenu du fichierC:\Temp\test.txt
ligne par ligne, tapez :
for /f "delims=" %%i in (C:\Temp\test.txt) do echo %%i
- Utilisez la commande
xcopy
pour copier des fichiers et des répertoires. Par exemple, pour copier le contenu du répertoireC:\Temp
dans le répertoireD:\Backup
, tapez :
xcopy C:\Temp D:\Backup /s /e
- Utilisez la commande
wmic
pour interroger les informations système à partir de la ligne de commande. Par exemple, pour afficher les informations de base sur l’ordinateur, tapez :
wmic computersystem get name, model, manufacturer, systemtype
- Utilisez la commande
tasklist
pour afficher les processus en cours d’exécution. Par exemple, pour afficher tous les processus en cours d’exécution dont le nom contient “explorer”, tapez :
tasklist | findstr explorer
Conclusion
Ces astuces et techniques avancées de scripting PowerShell et Batch vous aideront à devenir plus efficace dans votre travail en tant que sysadmin. En utilisant ces commandes et fonctions moins connues, vous pouvez automatiser des tâches plus complexes et résoudre des problèmes plus rapidement. Essayez-les dans votre prochain script et voyez comment vous pouvez améliorer votre productivité.
Avis de non-responsabilité : cet article a été rédigé à l’aide de ChatGPT. Je n’ai pas essayé tous les conseils répertoriés ici. Utiliser avec précaution. https://chat.openai.com/ ↩︎