Referensi pola pencocokan file
Layanan Azure DevOps | Azure DevOps Server 2022 - Azure DevOps Server 2019
Sintaks pola
Pola adalah string atau daftar string yang dibatasi baris baru. Nama file dan direktori dibandingkan dengan pola untuk menyertakan (atau terkadang mengecualikannya) dalam tugas. Anda dapat membangun perilaku kompleks dengan menumpuk beberapa pola. Lihat fnmatch untuk panduan sintaks lengkap.
Cocokkan karakter
Sebagian besar karakter digunakan sebagai kecocokan yang tepat. Apa yang dihitung sebagai kecocokan "persis" tergantung platform: sistem file Windows tidak peka huruf besar/kecil, sehingga pola "ABC" akan cocok dengan file yang disebut "abc". Pada sistem file peka huruf besar/kecil, pola dan nama tersebut tidak akan cocok.
Karakter berikut memiliki perilaku khusus.
-
*
cocok dengan nol karakter atau lebih dalam nama file atau direktori. Lihat contoh. -
?
cocok dengan satu karakter dalam nama file atau direktori. Lihat contoh. -
[]
cocok dengan set atau rentang karakter dalam nama file atau direktori. Lihat contoh. -
**
kartubebas rekursif. Misalnya,/hello/**/*
cocok dengan semua turunan/hello
.
Perpanjangan globbing
-
?(hello|world)
- kecocokanhello
atauworld
nol atau satu kali -
*(hello|world)
- nol atau lebih kemunculan -
+(hello|world)
- satu atau beberapa kemunculan -
@(hello|world)
- tepat sekali -
!(hello|world)
- bukanhello
atauworld
Catatan, glob yang diperluas tidak dapat menjangkau pemisah direktori. Misalnya, +(hello/world|other)
tidak valid.
Komentar
Pola yang dimulai dengan #
diperlakukan sebagai komentar.
Mengecualikan pola
Leading !
mengubah arti pola yang disertakan untuk dikecualikan.
Anda dapat menyertakan pola, mengecualikan subsetnya, lalu menyertakan kembali subsetnya: ini dikenal sebagai pola "terjalin".
Beberapa !
membalikkan arti. Lihat contoh.
Anda harus menentukan pola sertakan sebelum mengecualikan pola. Lihat contoh.
Melarikan diri
Membungkus karakter khusus dalam []
dapat digunakan untuk melepaskan karakter glob harfiah dalam nama file. Misalnya nama file harfiah hello[a-z]
dapat diloloskan sebagai hello[[]a-z]
.
Potong
/
digunakan sebagai pemisah jalur di Linux dan macOS.
Sebagian besar waktu, agen Windows menerima /
.
Kesempatan di mana pemisah Windows (\
) harus digunakan didokumenkan.
Contoh
Contoh pola dasar
Contoh tanda bintang
Contoh 1: Mengingat *Website.sln
pola dan file:
ConsoleHost.sln
ContosoWebsite.sln
FabrikamWebsite.sln
Website.sln
Pola akan cocok:
ContosoWebsite.sln
FabrikamWebsite.sln
Website.sln
Contoh 2: Mengingat *Website/*.proj
pola dan jalur:
ContosoWebsite/index.html
ContosoWebsite/ContosoWebsite.proj
FabrikamWebsite/index.html
FabrikamWebsite/FabrikamWebsite.proj
Pola akan cocok:
ContosoWebsite/ContosoWebsite.proj
FabrikamWebsite/FabrikamWebsite.proj
Contoh tanda tanya
Contoh 1: Mengingat log?.log
pola dan file:
log1.log
log2.log
log3.log
script.sh
Pola akan cocok:
log1.log
log2.log
log3.log
Contoh 2: Mengingat image.???
pola dan file:
image.tiff
image.png
image.ico
Pola akan cocok:
image.png
image.ico
Contoh set karakter
Contoh 1: Mengingat Sample[AC].dat
pola dan file:
SampleA.dat
SampleB.dat
SampleC.dat
SampleD.dat
Pola akan cocok:
SampleA.dat
SampleC.dat
Contoh 2: Mengingat Sample[A-C].dat
pola dan file:
SampleA.dat
SampleB.dat
SampleC.dat
SampleD.dat
Pola akan cocok:
SampleA.dat
SampleB.dat
SampleC.dat
Contoh 3: Mengingat Sample[A-CEG].dat
pola dan file:
SampleA.dat
SampleB.dat
SampleC.dat
SampleD.dat
SampleE.dat
SampleF.dat
SampleG.dat
SampleH.dat
Pola akan cocok:
SampleA.dat
SampleB.dat
SampleC.dat
SampleE.dat
SampleG.dat
Contoh kartubebas rekursif
Mengingat pola **/*.ext
dan file:
sample1/A.ext
sample1/B.ext
sample2/C.ext
sample2/D.not
Pola akan cocok:
sample1/A.ext
sample1/B.ext
sample2/C.ext
Mengecualikan contoh pola
Mengingat polanya:
*
!*.xml
dan file:
ConsoleHost.exe
ConsoleHost.pdb
ConsoleHost.xml
Fabrikam.dll
Fabrikam.pdb
Fabrikam.xml
Pola akan cocok:
ConsoleHost.exe
ConsoleHost.pdb
Fabrikam.dll
Fabrikam.pdb
Mengecualikan ganda
Mengingat polanya:
*
!*.xml
!!Fabrikam.xml
dan file:
ConsoleHost.exe
ConsoleHost.pdb
ConsoleHost.xml
Fabrikam.dll
Fabrikam.pdb
Fabrikam.xml
Pola akan cocok:
ConsoleHost.exe
ConsoleHost.pdb
Fabrikam.dll
Fabrikam.pdb
Fabrikam.xml
Folder dikecualikan
Mengingat polanya:
**
!sample/**
dan file:
ConsoleHost.exe
ConsoleHost.pdb
ConsoleHost.xml
sample/Fabrikam.dll
sample/Fabrikam.pdb
sample/Fabrikam.xml
Pola akan cocok:
ConsoleHost.exe
ConsoleHost.pdb
ConsoleHost.xml