Пропуск первой строки из любого вывода команды Linux


167

У меня есть требование, где я хотел бы опустить 1-ю строку из вывода, так ls -latr "some path"как мне нужно удалить total 136из вывода ниже

введите описание изображения здесь

Итак, я написал, ls -latr /home/kjatin1/DT_901_linux//autoInclude/system | tail -qчто исключил 1-ую строку, но когда папка пуста, она не опускается. Подскажите пожалуйста как пропустить 1-ю строку в любом выводе команды linux

Ответы:



261

tailПрограмма может сделать это:

ls -lart | tail -n +2

Эти -n +2средства «начали проход на второй строке вывода».


1
Обратите внимание, что для некоторых tailреализаций для этого требуется -nфлаг, как вtail -n +2
Mat

Вы также можете использовать find . -name . -o -ls -prune, но это дает несколько другой результат.
Donal Fellows

@ Мат: Так что, кажется, хотя он работал без, когда я пытался (на OSX).
Донал Феллоуз

раньше он работал с coreutilsхвостом, но он устарел, а затем удален. Теперь вы получаете tail: cannot open '+2' for reading: No such file or directory(coreutils 8.7). Печально, что другие реализации не принимают -n...
Мат

4
@ Мат: Некоторым это нужно, другим не примет? Тьфу! Тьфу тьфу тьфу тьфу! Это отвратительно.
Донал Феллоуз


20

Это быстрый взломанный способ ls -lart | grep -v ^total.

По сути, удалите все строки, начинающиеся с «total», которые в lsвыходных данных должны быть только первой строкой.

Более общий способ (для чего угодно):

ls -lart | sed "1 d"

sed "1 d" означает только печатать все, кроме первой строки.


3
Использование grepфильтра для этой задачи в целом опасно; это может соответствовать вещам неожиданно.
Донал Феллоуз

Иногда да, и я думаю, что это не лучшее решение ... но команда ls всегда ведет записи с правами доступа к каталогу. Это не идеально, поскольку grep продолжает проверять каждую строку, а ls ведет себя по-разному с другими флагами.
Джефф Ферланд

1
это просто семантика, но технически это означает удаление первой строки из потока.
Джон Моралес

Надеюсь, у вас нет файла с полным именем, о котором вы хотите знать
Amias
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.