Я искал, как я могу вывести список файлов определенной папки и всех вложенных элементов, как показано ниже. У меня уже недостаточно диска, поэтому я не могу установить macports, чтобы иметь команду дерева. Пожалуйста, посоветуйте мне.

Я хотел бы иметь вывод, как показано ниже.

Например, когда составить список папок «Документы»:

  • /useraccount/documents/test1/test1.odt 20140326 19:00:00
  • /useraccount/documents/test1/test2.odt 20140326 19:01:00
  • /useraccount/documents/test1/test11/test.odt 20140326 19:05:00
  • /useraccount/documents/test2/test1.odt 20140326 19:02:00
  • /useraccount/documents/test2/test2.odt 20140326 19:01:30
  • /useraccount/documents/test1.odt 20140325 19:01:30

Фон:

Почему я не перемещаю файлы на внешний диск, потому что кто-то дома изменил дату. Несколько недель назад, я думаю, что я мог видеть правильную дату и время, а также, я использовал это, но я не могу найти файлы с правильной датой и временем. Все файлы изменились. Это не моя ошибка. Мне нужно сохранить дату и время до переезда.

2 ответа2

3

Вы можете использовать команду find сканирования каталога и заставить его выполнить stat для вывода информации о каждом элементе, который он находит:

find /useraccount/documents -exec stat -f "%N %Sm" {} +

но дата в другом формате, чем вы хотите (например, «26 марта 19:00:00 2014» вместо «20140326 19:00:00»). Вы также можете использовать %m вместо %Sm чтобы получить необработанную временную метку (секунды с 1970 года). Смотрите man stat для получения дополнительных опций вывода и выбора формата.

Кстати, эта команда будет перечислять каталоги, а также файлы; для файлов просто добавьте -type f в нужное место:

find /useraccount/documents -type f -exec stat -f "%N %Sm" {} +
0

Вы можете сделать это с помощью команды du в терминале. Смотрите следующее обсуждение для более подробного объяснения:

Список каталогов и их размеры в командной строке Mac OS X

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .