Как да изброите всички файлове и съдържание на поддиректория в папка на Mac
Съдържание:
Искали ли сте някога да видите не само всеки файл в дадена директория, но и всички файлове в тези директории, погребани поддиректории? Ако търсите това, което всъщност е рекурсивен списък на файлове в дадена папка, ще ви покажем страхотен трик за Mac OS Finder, който ви позволява да правите точно това, и също така ще демонстрираме няколко по-усъвършенствани подхода с помощта на командния ред .
Как да разширите всички поддиректории и съдържанието на списък на папките в Mac OS Finder
За да видите бързо какво има във всички поддиректории на дадена папка в рамките на Finder, отворете родителската папка и променете към списъчен изглед. Сега трябва да задържите клавиша Option и да щракнете върху малката стрелка до името на директорията, за да разгънете тази директория и всички поддиректории едновременно.
Резултатът е, че всяка подпапка, съдържаща се в директорията, върху която сте щракнали върху стрелката, също ще разкрие нейното съдържание:
Повторното щракване с Option върху тази стрелка ще накара всички поддиректории да се затворят, в противен случай това става новият изглед по подразбиране при щракване върху стрелката.
Имайте предвид, че ако искате да видите скрити файлове чрез този метод, трябва да разрешите скритите файлове да се показват отделно в Mac OS X Finder, което след това ще се извършва през всяка папка, докато не бъде отново деактивиран.
Горният подход ще бъде най-лесният метод за повечето потребители, а следващите два метода са фокусирани върху командния ред и са насочени към тези, които се чувстват добре в терминала.
Списък на всички файлове и съдържание на поддиректории от командния ред
За да изброите всички файлове рекурсивно от командния ред, можете да прикачите флага -R към традиционната команда ls. Това разширява поддиректориите и изброява съдържащите се в тях файлове. Тези команди ще работят в почти всички форми на unix, от Mac OS X до Linux или каквото друго може да срещнете.
ls -R ~/Desktop/
Примерният резултат ще изглежда така:
/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: volcano.jpeg itenerary.txt билети.JPG
Резултатът е приличен, но може да бъде подреден по-добре.
Използването на флаговете -lah в допълнение към -R ще покаже разрешения, собственост, дати на модификация и прави четенето на информация за файла много по-лесно. Флагът -a не е задължителен, позволявайки показване и на скрити файлове.
ls -lahR ~/Desktop/
Примерният резултат ще изглежда така:
/Users/macuser/Desktop/wallpapers: общо 5464 drwxr-xr-x@ 11 macuser staff 374B 14 януари 15:32 . drwxr-xr-x 522 macuser staff 17K 28 януари 10:20 . -rw-r--r--@ 1 macuser staff 254K 13 януари 15:44 Dark Tower.jpg -rw-r--r--@ 1 macuser staff 101K 14 януари 15:32 автомобили.jpg -rw-r--r--@ 1 macuser staff 141K 13 януари 15:44 star-nebula.jpg -rw-r--r--@ 1 macuser staff 206K 14 януари 09:57 nintendo.jpg -rw- r--r--@ 1 macuser staff 134K 13 януари 15:44 m33.jpg -rw-r--r--@ 1 macuser staff 1,4M 13 януари 15:30 milky-way.jpg -rw-r-- r--@ 1 macuser staff 153K 13 януари 15:44 ngc602.jpg -rw-r--r--@ 1 macuser staff 194K 13 януари 15:44 windows.jpg /Users/macuser/Desktop/trip: общо 360 drwxr -xr-x@ 6 macuser staff 204B 9 декември 13:43 . drwxr-xr-x 522 macuser staff 17K 22 януари 10:20 . -rw-r--r--@ 1 macuser staff 6.0K 9 дек 13:43 .DS_Store -rw-r--r--@ 1 macuser staff 30K 8 дек 12:41 volcano.jpeg -rw-r-- r--@ 1 macuser staff 45K 8 декември 12:41 itinerary.txt -rw-r--r--@ 1 macuser staff 88K 9 декември 12:31 билети.JPG
Ще забележите, че пътят до всеки файл е посочен над самите файлове, разширявайки поддиректориите много подобно на метода Finder, споменат по-горе. Можете да получите пътя за продължаване на името на файла, но като използвате изцяло различна команда.
Избройте всички файлове рекурсивно с показани пълни пътища към директорията
Накрая, ако искате списък на всички файлове с посочените пълни пътища, можете да преминете към командата find.
find ~/Desktop/Sample/ -type f
Това ще изведе пълния път до всеки файл в списък:
/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
Ако искате да споделите списък с директория с някого, командата find вероятно предлага превъзходни резултати. В такъв случай можете лесно да изхвърлите изхода във файл, като прикачите > към края така:
find /Path/To/List -type f > FilesWithPaths.txt
Флагът “-type f” означава само обикновени файлове, ако искате да покажете повече обекти или символни връзки, можете да проверите страницата на ръководството за намиране за допълнителна информация.