about_Wildcards
Kısa açıklama
PowerShell'de joker karakterlerin nasıl kullanılacağını açıklar.
Uzun açıklama
Joker karakterler bir veya birden çok karakteri temsil eden karakterlerdir. Komutlarda sözcük desenleri oluşturmak için bunları kullanabilirsiniz. Joker karakter ifadeleri işleciyle -like
veya joker karakter kabul eden herhangi bir parametreyle kullanılır.
Örneğin, dizindeki C:\Techdocs
tüm dosyaları bir .ppt
dosya adı uzantısıyla eşleştirmek için şunu yazın:
Get-ChildItem C:\Techdocs\*.ppt
Bu durumda yıldız işareti (*
) joker karakteri, dosya adı uzantısından .ppt
önce görünen tüm karakterleri temsil eder.
Joker ifadeler normal ifadelerden daha basittir. Daha fazla bilgi için bkz . about_Regular_Expressions.
PowerShell aşağıdaki joker karakterleri destekler:
*
- Sıfır veya daha fazla karakter eşleştira*
,ag
ve ile eşleşiraA
Apple
a*
eşleşmiyorbanana
?
- Dizeler için bu konumdaki bir karakteri eşleştirin?n
,in
ve ile eşleşiran
on
?n
eşleşmiyorran
?
- Dosyalar ve dizinler için bu konumda sıfır veya bir karakter eşleştirin?.txt
eşleşmelera.txt
veb.txt
?.txt
eşleşmiyorab.txt
[ ]
- Karakter aralığını eşleştirme[a-l]ook
,cook
ve ile eşleşirbook
look
[a-l]ook
eşleşmiyortook
[ ]
- Belirli karakterleri eşleştir[bc]ook
eşleşmelerbook
vecook
[bc]ook
eşleşmiyorhook
`*
- Herhangi bir karakteri değişmez değer (joker karakter değil) olarak eşleştirin12`*4
Eşleşen12*4
12`*4
eşleşmiyor1234
Aynı sözcük düzenine birden çok joker karakter ekleyebilirsiniz. Örneğin, a ile l arasında harfle başlayan adlara sahip metin dosyalarını bulmak için şunu yazın:
Get-ChildItem C:\Techdocs\[a-l]*.txt
Not
Dosya sistemi öğeleri için joker karakter eşleştirme, dizelerden farklı çalışır. Daha fazla bilgi için DirectoryInfo.GetFiles(String, EnumerationOptions) yönteminin Açıklamalar bölümüne bakın.
Bunu joker karakter olarak işlemek yerine değişmez karakterle eşleştirmek istediğiniz durumlar olabilir. Bu gibi durumlarda, joker karakterden kaçmak için backtick (`
) karakterini kullanabilirsiniz, böylece değişmez karakter değeri kullanılarak karşılaştırılır. Örneğin, '*hello`?*'
"hello?" içeren dizelerle eşleşir.
Birçok cmdlet, parametre değerlerinde joker karakterler kabul eder. Her cmdlet'in Yardım konusu, hangi parametrelerin joker karakterleri kabul ettiği açıklar. Joker karakterleri kabul eden parametreler için kullanımları büyük/küçük harfe duyarlı değildir.
Komutlarda ve betik bloklarında özellik değerlerini temsil eden bir sözcük deseni oluşturmak gibi joker karakterler kullanabilirsiniz. Örneğin, aşağıdaki komut ServiceType özellik değerinin Interactive içerdiği hizmetleri alır.
Get-Service | Where-Object {$_.ServiceType -Like "*Interactive*"}
Aşağıdaki örnekte deyimi, If
özellik değerlerini bulmak için joker karakterler kullanan bir koşul içerir. Geri yükleme noktasının Açıklaması PowerShell içeriyorsa, komut geri yükleme noktasının CreationTime özelliğinin değerini bir günlük dosyasına ekler.
$p = Get-ComputerRestorePoint
foreach ($point in $p) {
if ($point.description -like "*PowerShell*") {
Add-Content -Path C:\TechDocs\RestoreLog.txt "$($point.CreationTime)"
}
}
Ayrıca bkz.
PowerShell