Estoy tratando de encontrar todos los archivos cuyo nombre comienza con una letra mayúscula. He intentado usar el siguiente comando:
find . -type f -regex '.*\/[A-Z][^/]*'
Se trata de encontrar caminos con solo letras minúsculas. Los siguientes trabajos:
find . -type f -regex '.*\/[ABCDEFGHIJKLMNOPQRSTUVWXYZ][^/]*'
Al igual que:
find . -type f | grep '.*\/[A-Z][^/]*$'
He probado todas las diferentes opciones para regextype
, con el mismo resultado.
¿Por qué find
incluye letras minúsculas [A-Z]
? Pensé que la expresión regular para eso era [a-zA-Z]
. ¿Hay alguna forma de especificar un rango de solo letras mayúsculas find
?
LC_ALL=C find ...
?\/
)? ¿Qué hallazgo estás usando (find --version
)?/
solo es necesario cuando lo está utilizando como delimitador, por ejemplo, ens/foo\/bar/foobar/
. (Pero a menudo puede usar algún otro delimitador:.s#foo/bar#foobar#
)Respuestas:
No necesitas usar
-regex
. Puedes usar-name
en su lugar.fuente