Я пытаюсь перечислить некоторые файлы, но я хочу только имена файлов, в порядке даты файла. Я пробовал несколько команд, но они не работают.
Я знаю, что с помощью этого кода я могу перечислить только имена файлов:
ls -f *
И я знаю, что с помощью этой команды я могу перечислить файлы, отсортированные по дате:
ls -ltr *
Поэтому я попытался использовать эту команду, чтобы вывести только имена файлов, отсортированные по дате, но не по дате:
ls -ltr -f *
Эта последняя команда просто перечисляет имена файлов, но сортируется по имени файла, а не по дате.
Любые идеи, как я могу сделать это с помощью простой команды ls?
К вашему сведению, как только я получу эту работу, моей конечной целью будет перечислить только 10 последних созданных имен файлов, используя что-то вроде этого:
ls -ltr -f * | tail -10
Всего 2 ответа
Вы можете попробовать следующую команду:
ls -ltr | awk '{ print $9 }' | tail -n +2
Он извлекает имена файлов из команды ls -ltr.
Согласно man-странице для ls
, флаг -f
используется для
-f do not sort, enable -aU, disable -ls --color
Один из способов извлечь только файлы,
ls -p | grep -v /
Опция -p
используется для добавления '/' к имени каталога, мы можем использовать строки, не содержащие '/'.
Чтобы извлечь 10 последних использованных файлов, вы можете сделать следующее
ls -ptr * | grep -v / | tail -10