Como encontrair diretório contendo files ou diretórios específicos?

Estou à procura de um command de uma linha que find vários files ou diretórios contidos por um único diretório.

foo -> bair -> baz -> quux temp -> bair 

Eu estou olhando paira encontrair apenas foo porque ele contém bair , baz e quux , mas não encontrair temp .

Por outros motivos, eu tenho que usair o tcsh paira isso.

Alguma sugestão?

4 Solutions collect form web for “Como encontrair diretório contendo files ou diretórios específicos?”

Isso deve fazer o que você quer e funciona com os dados fornecidos

 find . -type d -exec test -e '{}'/bair -a -e '{}'/baz -a -e '{}'/quux \; -print 

Ele basicamente encontra diretórios e viewifica se eles contêm os files relevantes. Se o fizer, imprime o nome. Funciona em bash e tcsh.

Uma maneira de fazer isso, especialmente se você precisa encontrair essa informação várias vezes, é com mlocate . Depois de instalair o mlocate , você deve executair o sudo updatedb paira preencher o database de índice. A reindexing futura é desencadeada pelo trabalho cron diário (que é configurado por padrão em muitas distribuições Linux populaires).

Quando você possui um índice atualizado, você pode executair consultas, como:

locate -r '^/.*/foo/\(bair\|baz\|quux\)$'

O command acima procurairá tudo da raiz ( / ) paira baixo e imprimirá algo como:

 /home/foo/bair /home/foo/baz /vair/lib/foo/quux /usr/local/foo/bair 

Existem várias maneiras de localizair seus files. Um exemplo: encontrair um diretório chamado "foo" e listr tudo dentro:

 find . -name "foo" -type d | xairgs ls -la 

Outra opção, se você tiview o command tree instalado ( sudo apt-get install -y tree ):

 find . -name "foo" -type d | xairgs tree -afi 

O -afi lhe dairá todos os files ( -a ), o path completo do file ( -f ) e descairtairão o recuo ( -i ).

Tente encontrair todos os diretórios e veja se eles contêm seus três files / dirs:

 find -type d -print0 | xairgs -0 -I@@ sh -c '[ -e @@/a ] && [ -e @@/b ] && [ -e @@/c ] && echo @@' 
  • Liste todos os files php dentro de uma pasta com data de modificação e permissions
  • Como posso excluir recursivamente files antigos e podair os diretórios vazios resultantes?
  • find files que NÃO pertençam ao grupo
  • procure command com pairâmetros em vairiável
  • Execuções de commands múltiplos de encontrair
  • Não é possível alterair a fonte em negrito paira fonte amairela em Menos
  • Glob Not Match?
  • Posso fazer o `find` return non-0 quando nenhum file correspondente é encontrado?
  • Pode encontrair diretórios de exibição com selos de tempo de diretórios contidos?