$ find / -path "*/metadata/*" -name "*.xml"
ou, dependendo das suas necessidades, apenas
$ find / -path "*/metadata/*.xml"
Estes não são os mesmos embora.
-
O primeiro deles localizará todos os arquivos com um sufixo
.xml
com um caminho que contenha um diretóriometadata
. Os arquivos podem ter vários níveis abaixo desse diretório. -
O segundo encontrará todos os arquivos com um sufixo
.xml
localizados em um diretóriometadata
.
Observação: estou usando /
como você disse "no sistema de arquivos", que eu interpretei como "em qualquer lugar".
Como alternativa, usar locate
(só encontrará arquivos acessíveis para todos os usuários):
$ locate "/metadata/" | grep '\.xml$'
(Isso funcionará um pouco como o primeiro find
acima)