Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Sintaxis del patrón
Un patrón es una cadena o lista de cadenas delimitadas por líneas nuevas. Los nombres de archivo y directorio se comparan con los patrones para incluirlos (o a veces excluirlos) en una tarea. Puede crear un comportamiento complejo apilando varios patrones. Consulte fnmatch para obtener una guía de sintaxis completa.
Coincidir caracteres
La mayoría de los caracteres se usan como coincidencias exactas. Lo que cuenta como una coincidencia "exacta" depende de la plataforma: el sistema de archivos de Windows no distingue mayúsculas de minúsculas, por lo que el patrón "ABC" coincidiría con un archivo denominado "abc". En los sistemas de archivos que distinguen mayúsculas de minúsculas, ese patrón y nombre no coincidirían.
Los siguientes caracteres tienen un comportamiento especial.
-
*
coincide con cero o más caracteres dentro de un nombre de archivo o directorio. Vea ejemplos de . -
?
coincide con cualquier carácter único dentro de un nombre de archivo o directorio. Vea ejemplos de . -
[]
coincide con un conjunto o intervalo de caracteres dentro de un nombre de archivo o directorio. Vea ejemplos de . -
**
comodín recursivo. Por ejemplo,/hello/**/*
coincide con todos los descendientes de/hello
.
Globbing extendido
-
?(hello|world)
: coincidehello
oworld
cero veces o una vez. -
*(hello|world)
: cero o más repeticiones -
+(hello|world)
: una o varias repeticiones -
@(hello|world)
: exactamente una vez -
!(hello|world)
: nohello
niworld
Nota:
Los globs extendidos no pueden abarcar separadores de directorios. Por ejemplo, +(hello/world|other)
no es válido.
Comentarios
Los patrones que comienzan por #
se tratan como comentarios.
Excluir patrones
La !
inicial cambia el significado de un patrón de inclusión que se va a excluir.
Puede incluir un patrón, excluir un subconjunto de él y, a continuación, volver a incluir un subconjunto de eso: esto se conoce como un patrón "intercalado".
Varios !
voltea el significado. Vea ejemplos de .
Debe definir un patrón de inclusión antes de un patrón de exclusión. Vea ejemplos de .
Escape
El ajuste de caracteres especiales en []
se puede usar para escapar caracteres globales literales en un nombre de archivo. Por ejemplo, el nombre de archivo literal hello[a-z]
se puede escapar como hello[[]a-z]
.
Barra oblicua
/
se usa como separador de ruta de acceso en Linux y macOS.
La mayoría de las veces, los agentes de Windows aceptan /
.
Las ocasiones en las que se debe usar el separador de Windows (\
) se documentan.
Ejemplos
- Ejemplos de patrones básicos
- Ejemplos de Asterisco
- Ejemplos de signo de interrogación
- Ejemplos de juego de caracteres
- Ejemplos de caracteres comodín recursivos
- Excluir ejemplos de patrones
- Ejemplos de exclusión doble
- Ejemplos de exclusión de carpetas
Ejemplos de patrones básicos
Ejemplos de Asterisco
Ejemplo 1: Dado el patrón *Website.sln
, y los siguientes archivos:
ConsoleHost.sln
ContosoWebsite.sln
FabrikamWebsite.sln
Website.sln
El patrón coincidiría con:
ContosoWebsite.sln
FabrikamWebsite.sln
Website.sln
ejemplo 2: Dado el patrón *Website/*.proj
y las rutas de acceso:
ContosoWebsite/index.html
ContosoWebsite/ContosoWebsite.proj
FabrikamWebsite/index.html
FabrikamWebsite/FabrikamWebsite.proj
El patrón coincidiría con:
ContosoWebsite/ContosoWebsite.proj
FabrikamWebsite/FabrikamWebsite.proj
Ejemplos de signo de interrogación
Ejemplo 1: Dado el patrón log?.log
, y los siguientes archivos:
log1.log
log2.log
log3.log
script.sh
El patrón coincidiría con:
log1.log
log2.log
log3.log
Ejemplo 2: Dado el patrón image.???
, y los siguientes archivos:
image.tiff
image.png
image.ico
El patrón coincidiría con:
image.png
image.ico
Ejemplos de juego de caracteres
Ejemplo 1: Dado el patrón Sample[AC].dat
, y los siguientes archivos:
SampleA.dat
SampleB.dat
SampleC.dat
SampleD.dat
El patrón coincidiría con:
SampleA.dat
SampleC.dat
Ejemplo 2: Dado el patrón Sample[A-C].dat
, y los siguientes archivos:
SampleA.dat
SampleB.dat
SampleC.dat
SampleD.dat
El patrón coincidiría con:
SampleA.dat
SampleB.dat
SampleC.dat
Ejemplo 3: Dado el patrón Sample[A-CEG].dat
, y los siguientes archivos:
SampleA.dat
SampleB.dat
SampleC.dat
SampleD.dat
SampleE.dat
SampleF.dat
SampleG.dat
SampleH.dat
El patrón coincidiría con:
SampleA.dat
SampleB.dat
SampleC.dat
SampleE.dat
SampleG.dat
Ejemplos de caracteres comodín recursivos
Dado el patrón **/*.ext
, y los siguientes archivos:
sample1/A.ext
sample1/B.ext
sample2/C.ext
sample2/D.not
El patrón coincidiría con:
sample1/A.ext
sample1/B.ext
sample2/C.ext
Copilot generó el ejemplo siguiente. Copilot se basa en la inteligencia artificial, por lo que son posibles sorpresas y errores. Para obtener más información, consulte Preguntas más frecuentes sobre el uso general de Copilot.
El **/*.ext
patrón glob es un patrón recursivo eficaz que se usa en muchos sistemas de archivos y herramientas (como bash
, zsh
, Python glob
, etc.) para que coincidan con todos los archivos que terminan en .ext
el directorio actual y en todos los subdirectorios, independientemente de la profundidad anidada.
Estas son algunas rutas de acceso de ejemplo que coincidirían **/*.ext
con :
sample1/A.ext
sample1/B.ext
sample2/C.ext
sample2/subdir1/D.ext
sample2/subdir1/subdir2/E.ext
sample3/F.ext
sample3/subdir3/G.ext
sample3/subdir3/subdir4/H.ext
La **
parte significa cualquier número de directorios (incluido cero) y *.ext
significa cualquier archivo que termine en .ext
.
Excluir ejemplos de patrones
Dado el siguiente patrón y los siguientes archivos:
*
!*.xml
ConsoleHost.exe
ConsoleHost.pdb
ConsoleHost.xml
Fabrikam.dll
Fabrikam.pdb
Fabrikam.xml
El patrón coincidiría con:
ConsoleHost.exe
ConsoleHost.pdb
Fabrikam.dll
Fabrikam.pdb
Ejemplos de exclusión doble
Dado el siguiente patrón y los siguientes archivos:
*
!*.xml
!!Fabrikam.xml
ConsoleHost.exe
ConsoleHost.pdb
ConsoleHost.xml
Fabrikam.dll
Fabrikam.pdb
Fabrikam.xml
El patrón coincidiría con:
ConsoleHost.exe
ConsoleHost.pdb
Fabrikam.dll
Fabrikam.pdb
Fabrikam.xml
Ejemplos de exclusión de carpetas
Dado el siguiente patrón y los siguientes archivos:
**
!sample/**
ConsoleHost.exe
ConsoleHost.pdb
ConsoleHost.xml
sample/Fabrikam.dll
sample/Fabrikam.pdb
sample/Fabrikam.xml
El patrón coincidiría con:
ConsoleHost.exe
ConsoleHost.pdb
ConsoleHost.xml