À propos des caractères génériques
DESCRIPTION COURTE
Décrit comment utiliser des caractères génériques dans PowerShell.
DESCRIPTION DÉTAILLÉE
Les caractères génériques représentent un ou plusieurs caractères. Vous pouvez les utiliser pour créer des modèles de mots dans des commandes. Par exemple, pour obtenir tous les fichiers du C:\Techdocs
répertoire avec une .ppt
extension de nom de fichier, tapez :
Get-ChildItem C:\Techdocs\*.ppt
Dans ce cas, le caractère générique astérisque (*
) représente tous les caractères qui apparaissent avant l’extension de .ppt
nom de fichier.
PowerShell prend en charge les caractères génériques suivants :
Caractère générique | Description | Exemple | Correspond | Aucune correspondance |
---|---|---|---|---|
* | Mettre en correspondance zéro ou plusieurs caractères | a* | aA, ag, Apple | Banane |
? | Mettre en correspondance un caractère dans cette position | ?¡n | an, in, on | Couru |
[ ] | Faire correspondre une plage de caractères | [a-l]ook | livre, cuisiner, regarder | Pris |
[ ] | Mettre en correspondance des caractères spécifiques | [bc]ook | livre, cuisine | hook |
Vous pouvez inclure plusieurs caractères génériques dans le même modèle de mot. Par exemple, pour rechercher des fichiers texte dont les noms commencent par les lettres a à l, tapez :
Get-ChildItem C:\Techdocs\[a-l]*.txt
De nombreuses applets de commande acceptent des caractères génériques dans les valeurs de paramètre. La rubrique d’aide de chaque applet de commande décrit les paramètres qui acceptent les caractères génériques. Pour les paramètres qui acceptent les caractères génériques, leur utilisation ne respecte pas la casse.
Vous pouvez utiliser des caractères génériques dans des commandes et des blocs de script, par exemple pour créer un modèle de mot qui représente des valeurs de propriété. Par exemple, la commande suivante obtient les services dans lesquels la valeur de la propriété ServiceType inclut Interactive.
Get-Service | Where-Object {$_.ServiceType -Like "*Interactive*"}
Dans l’exemple suivant, l’instruction If
inclut une condition qui utilise des caractères génériques pour rechercher des valeurs de propriété. Si la description du point de restauration inclut PowerShell, la commande ajoute la valeur de la propriété CreationTime du point de restauration à un fichier journal.
$p = Get-ComputerRestorePoint
foreach ($point in $p) {
if ($point.description -like "*PowerShell*") {
Add-Content -Path C:\TechDocs\RestoreLog.txt "$($point.CreationTime)"
}
}