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 find
inclui 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 ...
?