Why can't I use a command like this to find all the pdf files in a directory and subdirectories?
O curinga *.pdf
em seu comando é expandido por bash
para todos os arquivos correspondentes no diretório atual, antes executando ls
.
How do I do it? (I'm using bash in ubuntu)
encontre a sua resposta.
find . -name \*.pdf
é uma listagem recursiva de arquivos pdf. -iname
é uma correspondência insensível a maiúsculas e minúsculas, por isso
find . -iname \*.pdf
lista todos os arquivos .pdf, incluindo, por exemplo, foo.PDF
Além disso, você pode usar ls para um número limitado de subpastas, por exemplo
ls *.pdf */*.pdf
para localizar todos os arquivos pdf em subpastas (corresponde a bar / foo.pdf, não a bar / foo / asdf.pdf e não a foo.PDF).
Se você quiser remover arquivos encontrados com o find, você pode usar
find . -iname \*.pdf -delete