PowerShell: Bir Desenle Eşleşen Tüm Klasörler Nasıl Bulunur?


Genellikle belirli bir kalıpla eşleşen bir dizindeki tüm klasörleri ve alt klasörleri bulmak için PowerShell'i kullanmak isteyebilirsiniz.

Bunu yapmak için aşağıdaki sözdizimini kullanabilirsiniz:

$my_path= "c:\users\bobbi\data1"

(Dir -Recurse -Directory -Filter "*team*" -Path $my_path).FullName

Bu özel örnek, klasör adının herhangi bir yerinde "team" modelini içeren $my_path değişkeni tarafından belirtilen dizinde bulunan her klasör ve alt klasörün tam yolunu döndürür.

Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.

Örnek: PowerShell'de Bir Desenle Eşleşen Tüm Klasörleri Bulma

Aşağıdaki yolda bulunan bir dizinimiz olduğunu varsayalım:

c:\users\bobbi\data1

Bu dizinde, klasör adının herhangi bir yerinde "ekip" kalıbını içeren tüm klasörleri bulmak istediğimizi varsayalım.

Bunu yapmadan önce, ilk olarak bu dizinin klasör yapısını görüntülemek için tree komutunu kullanabiliriz:

Sadece bu klasör yapısına baktığımızda, klasör adında “team” ifadesini içeren iki klasör olduğunu görebiliriz.

Bu klasörlerin her birinin yolunu almak için aşağıdaki sözdizimini kullanabiliriz:

$my_path= "c:\users\bobbi\data1"

(Dir -Recurse -Directory -Filter "*team*" -Path $my_path).FullName

Aşağıdaki ekran görüntüsü bu sözdiziminin pratikte nasıl kullanılacağını göstermektedir:

Bunun aşağıdaki klasör yollarını döndürdüğüne dikkat edin:

  • c:\users\bobbi\data1\managers\team_admin
  • c:\users\bobbi\data1\managers\team_roster

Bu klasörlerin her ikisinin de klasör adında "ekip" adını içerdiğine dikkat edin.

"Takım" ifadesini istediğiniz herhangi bir desenle değiştirmekten çekinmeyin.

İlgili makaleler