Можно ли перечислить файлы, упорядоченные по дате, добавленные в папку из командной строки, например ls?

Мне нужно создать скрипт, который показывает файлы в том же порядке, что и папка «Загрузки по умолчанию» в доке, упорядоченная по дате добавления, сначала самая новая. Я не могу найти вариант в ls.

Любой другой способ сделать это?

9 голосов | спросил Ramiro Araujo 21 MarpmThu, 21 Mar 2013 20:21:32 +04002013-03-21T20:21:32+04:0008 2013, 20:21:32

3 ответа


5

Упрощенное (быстрое) решение:

mdls -name kMDItemFSName -name kMDItemDateAdded -raw * | \
xargs -0 -I {} echo {} | \
sed 'N;s/\n/ /' | \
sort
ответил Jose Alban 1 PM00000040000002031 2015, 16:36:20
2

Ну, как обычно, после написания вопроса я начинаю копать содержимое метаданных в файлах и в итоге написал это:

ls -a | \
grep -v '^\.$\|^\.\.$' | \
xargs -I {} mdls -name kMDItemFSName -name kMDItemDateAdded {} | \
sed 'N;s/\n//' | grep -v '(null)' | \
awk '{print $3 " " $4 " " substr($0,index($0,$7))}' | \
sort -r

В основном это: 1. список всех файлов 2. Отфильтровывает. а также .. 3. получает добавленное имя и дату, одну строку за другой 4. объединяет каждую строку в 1 строку 5. извлекает дату, время и имя 6. сортирует его в обратном порядке (поскольку datetime является upfront, он сортируется по дате)

Надеюсь, это поможет кому-то еще! :)

@bmike на самом деле, сайт навязал мне ограничение, чтобы ответить на мой собственный вопрос только после 8 часов размещения моего вопроса из-за моей нехватки репутации: D

ответил Ramiro Araujo 22 MaramFri, 22 Mar 2013 06:56:11 +04002013-03-22T06:56:11+04:0006 2013, 06:56:11
0
  

человек ls

 -U      Use time of file creation, instead of last modification for
         sorting (-t) or long output (-l).
ответил Jason 21 MarpmThu, 21 Mar 2013 20:59:46 +04002013-03-21T20:59:46+04:0008 2013, 20:59:46

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132