Подтвердить что ты не робот

Первые два результата из команды ls

Я использую ls -l -t, чтобы получить список файлов в каталоге, упорядоченном по времени.

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

4b9b3361

Ответ 1

Вы можете передать его в head:

ls -l -t | head -3

Дадут вам 3 верхних строчки (2 файла и общее количество).

Это просто даст вам первые 2 строки файлов, пропустив строку размера:

ls -l -t | tail -n +2 | head -2

tail удаляет первую строку, затем head выводит следующие две строки.

Ответ 2

Чтобы избежать работы с верхней выходной строкой, вы можете отменить сортировку и получить последние две строки

ls -ltr | tail -2

Это довольно безопасно, но в зависимости от того, что вы будете делать с этими двумя файловыми записями после их нахождения, вы должны прочитать Parsing ls on проблемы с использованием ls для получения файлов и информации о файле.

Ответ 3

Вы можете использовать команду head для захвата только первых двух строк вывода:

ls -l -t | head -2

Ответ 4

Вам нужно проложить трубку через голову.

ls -l -t | head -n 3

выведет два первых результата.

Ответ 5

Или вы можете попробовать только это

ls -1 -t | head -2

Переключатель -1 пропускает строку заголовка.