Estou tentando encontrar todos os arquivos para os quais o nome começa com uma letra maiúscula. Eu tentei usar o seguinte comando:
find . -type f -regex '.*\/[A-Z][^/]*'
É encontrar caminhos apenas com letras minúsculas. Os seguintes trabalhos:
find . -type f -regex '.*\/[ABCDEFGHIJKLMNOPQRSTUVWXYZ][^/]*'
Como faz:
find . -type f | grep '.*\/[A-Z][^/]*$'
Eu tentei todas as opções diferentes para regextype, com o mesmo resultado.
Por que findinclui letras minúsculas [A-Z]? Eu pensei que o regex para isso era [a-zA-Z]. Existe alguma maneira de especificar apenas um intervalo de letras maiúsculas find?
Isso funciona. Você poderia explicar o porquê em uma resposta?
—
Karl Bielefeldt
Eu poderia tentar, mas você pode perder isso .
—
mikeserv
Por que você está escapando da barra (
—
Cristian Ciupitu 25/10
\/)? Também o achado que você está usando ( find --version)?
O escape
—
deltab
/só é necessário quando você o usa como delimitador, por exemplo, no s/foo\/bar/foobar/. (Mas muitas vezes você pode usar algum outro delimitador: s#foo/bar#foobar#.)
LC_ALL=C find ...?