Como listar todos os arquivos e conteúdos de subdiretórios em uma pasta no Mac

Índice:

Anonim

Já quis ver não apenas todos os arquivos em um determinado diretório, mas todos os arquivos dentro desses diretórios enterrados em subdiretórios? Se você está procurando o que é basicamente uma listagem recursiva de arquivos em uma determinada pasta, mostraremos um ótimo truque para o Mac OS Finder que permite fazer exatamente isso e também demonstraremos várias abordagens mais avançadas usando a linha de comando .

Como expandir todos os subdiretórios e listar o conteúdo da pasta no Mac OS Finder

Para ver rapidamente o que há em todos os subdiretórios de uma pasta no Finder, abra a pasta pai e altere para a exibição de lista. Agora você precisa segurar a tecla Option e clicar na pequena seta ao lado do nome do diretório para expandir esse diretório e todos os subdiretórios ao mesmo tempo.

O resultado é que toda e qualquer subpasta contida no diretório em que você clicou com a opção de clicar na seta também revelará seu conteúdo:

O clique na seta novamente fará com que todos os subdiretórios sejam fechados, caso contrário, essa se tornará a nova visualização padrão ao clicar na seta.

Lembre-se de que, se quiser visualizar arquivos ocultos por meio desse método, você deve permitir que os arquivos ocultos sejam exibidos no Mac OS X Finder separadamente, que será executado em cada pasta até que seja desativado novamente.

A abordagem acima será o método mais fácil para a maioria dos usuários, e os próximos dois métodos são focados na linha de comando e são voltados para aqueles que se sentem à vontade no Terminal.

Listar todos os arquivos e conteúdos de subdiretórios na linha de comando

Para listar todos os arquivos recursivamente na linha de comando, você pode anexar o sinalizador -R ao comando ls tradicional. Isso expande os subdiretórios e lista os arquivos contidos neles. Esses comandos funcionarão em quase todas as formas de unix, do Mac OS X ao Linux ou qualquer outro que você possa encontrar.

ls -R ~/Desktop/

Saída de exemplo seria algo como isto:

/Users/macuser/Desktop//wallpapers: Dark Tower.jpg milky-way.jpg car.jpg ngc602.jpg flaming-star-nebula.jpg ngc6188Kfir2000. jpg windows.jpg m33.jpg /Users/macuser/Desktop//trip: vulcan.jpeg itenerary.txt tickets.JPG

A saída é decente, mas poderia ser melhor organizada.

Usar os sinalizadores -lah além de -R mostrará permissões, propriedade, datas de modificação e facilitará muito a leitura das informações do arquivo. O sinalizador -a é opcional, permitindo que arquivos ocultos também sejam exibidos.

ls -lahR ~/Desktop/

A saída de exemplo seria:

/Users/macuser/Desktop/wallpapers: total 5464 drwxr-xr-x@ 11 macuser staff 374B Jan 14 15:32 . drwxr-xr-x 522 macuser staff 17K 28 de janeiro 10:20 . -rw-r--r--@ 1 macuser staff 254K Jan 13 15:44 Dark Tower.jpg -rw-r--r--@ 1 macuser staff 101K Jan 14 15:32 cars.jpg -rw-r--r--@ 1 macuser staff 141K Jan 13 15:44 star-nebula.jpg -rw-r--r--@ 1 macuser staff 206K Jan 14 09:57 nintendo.jpg -rw- r--r--@ 1 macuser staff 134K Jan 13 15:44 m33.jpg -rw-r--r--@ 1 macuser staff 1.4M Jan 13 15:30 milky-way.jpg -rw-r-- r--@ 1 macuser staff 153K Jan 13 15:44 ngc602.jpg -rw-r--r--@ 1 macuser staff 194K Jan 13 15:44 windows.jpg /Users/macuser/Desktop/trip: total 360 drwxr -xr-x@ 6 macuser staff 204B 9 de dezembro 13:43 . drwxr-xr-x 522 macuser staff 17K 22 de janeiro 10:20 . -rw-r--r--@ 1 equipe macuser 6.0K 9 de dezembro 13:43 .DS_Store -rw-r--r--@ 1 equipe macuser 30K 8 de dezembro 12:41 vulcão.jpeg -rw-r-- r--@ 1 equipe macuser 45K 8 de dezembro 12:41 itinerário.txt -rw-r--r--@ 1 equipe macuser 88K 9 de dezembro 12:31 tickets.JPG

Você notará que o caminho para cada arquivo está listado acima dos próprios arquivos, expandindo os subdiretórios muito parecido com o método Finder mencionado acima. Você pode obter o caminho para continuar o nome do arquivo usando um comando totalmente diferente.

Listar todos os arquivos recursivamente com caminhos de diretório completos mostrados

Finalmente, se você deseja uma lista de todos os arquivos com seus caminhos completos especificados, pode usar o comando find.

find ~/Desktop/Sample/ -type f

Isso despejará o caminho completo para cada arquivo em uma listagem:

/Users/macuser/Desktop/Sample/x11.jpg /Users/macuser/Desktop/Sample/Files/alpha-tool-preview.jpg /Users/macuser /Desktop/Sample/Files/alpha-tool.jpg /Users/macuser/Desktop/Sample/Files/reveal-editing-tools-preview.jpg /Users/macuser/Desktop/Sample/Files/save-transparent-png.jpg

Se você deseja compartilhar uma listagem de diretório com alguém, o comando find provavelmente oferece resultados superiores. Nesse caso, você pode despejar a saída em um arquivo facilmente anexando um > ao final da seguinte forma:

find /Path/To/List -type f > FilesWithPaths.txt

O sinalizador “-type f” significa apenas arquivos regulares, se você quiser mostrar mais objetos ou links simbólicos, você pode verificar a página do manual para encontrar informações adicionais.

Como listar todos os arquivos e conteúdos de subdiretórios em uma pasta no Mac