Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Kort beskrivning
Beskriver hur du använder jokertecken i PowerShell.
Lång beskrivning
Jokertecken representerar ett eller flera tecken. Du kan använda dem för att skapa ordmönster i kommandon. Jokerteckenuttryck används med operatorn -like
eller med någon parameter som accepterar jokertecken.
Om du till exempel vill matcha alla filer i C:\Techdocs
katalogen med ett .ppt
filnamnstillägg skriver du:
Get-ChildItem C:\Techdocs\*.ppt
I det här fallet representerar jokertecknet asterisk (*
) alla tecken som visas före filnamnstillägget .ppt
.
Jokerteckenuttryck är enklare än reguljära uttryck. Mer information finns i about_Regular_Expressions.
PowerShell stöder följande jokertecken:
*
– Matcha noll eller fler teckena*
matcharaA
,ag
ochApple
a*
matchar intebanana
?
- Matcha ett tecken i den positionen?n
matcharan
,in
ochon
?n
matchar interan
[ ]
– Matcha ett teckenintervall[a-l]ook
matcharbook
,cook
ochlook
[a-l]ook
matchar intetook
[ ]
– Matcha specifika tecken[bc]ook
matchningarbook
ochcook
[bc]ook
matchar intehook
`*
– Matcha alla tecken som en literal (inte ett jokertecken)12`*4
Matcher12*4
12`*4
matchar inte1234
Du kan inkludera flera jokertecken i samma ordmönster. Om du till exempel vill hitta textfiler med namn som börjar med bokstäverna a till och med l skriver du:
Get-ChildItem C:\Techdocs\[a-l]*.txt
Det kan finnas fall där du vill matcha literaltecknet i stället för att behandla det som ett jokertecken. I dessa fall kan du använda backtick-tecknet (`
) för att undvika jokertecknet så att det jämförs med literalteckenvärdet. Matchar till exempel '*hello`?*'
strängar som innehåller "hello?".
Många cmdletar accepterar jokertecken i parametervärden. I hjälpavsnittet för varje cmdlet beskrivs vilka parametrar som accepterar jokertecken. För parametrar som accepterar jokertecken är deras användning skiftlägesokänslig.
Du kan använda jokertecken i kommandon och skriptblock, till exempel för att skapa ett ordmönster som representerar egenskapsvärden. Följande kommando hämtar till exempel tjänster där egenskapen ServiceType innehåller Interactive.
Get-Service | Where-Object {$_.ServiceType -Like "*Interactive*"}
I följande exempel innehåller -instruktionen If
ett villkor som använder jokertecken för att hitta egenskapsvärden. Om återställningspunktens Beskrivning innehåller PowerShell lägger kommandot till värdet för återställningspunktens CreationTime-egenskap i en loggfil.
$p = Get-ComputerRestorePoint
foreach ($point in $p) {
if ($point.description -like "*PowerShell*") {
Add-Content -Path C:\TechDocs\RestoreLog.txt "$($point.CreationTime)"
}
}