Как удалить количество строк из файла повторно

Я прочитал Как удалить первые n строк файла ascii с помощью команд оболочки? , это полезно. Однако у меня есть файл, как показано ниже (рассмотрите 2 столбца как 2 разных файла):

1 4 1 4 1 4 1 4 1 4 3 5 3 5 3 5 3 5 3 5 7 5 7 5 7 5 7 5 7 5 

Мне нужно удалить строку 2-5, затем 7-10 и т. Д. (Действительные выходы 1, 3, 7 и 4, 5, 5).

Я знаю количество строк, для которых повторяется шаблон (число). Однако я не знаю, будет ли каждый раз, когда он будет следовать одному и тому же шаблону, например, здесь его 1, 3, 7 следующий файл может иметь 4, 6, 1 или 4, 5, 5, поэтому мне нужно сделать это числом строк, чем grepping значения.

Может ли кто-нибудь дать мне указатель, как я могу удалить строки повторно?

  • Как извлечь положительные числа в первом столбце из вывода, как в вопросе?
  • Регистратор данных с PI
  • Странное форматирование даты в сценарии bash
  • Для того, чтобы цикл не выполнялся корректно поверх ssh
  • Заменить текст / строку новой строкой
  • Сценарий оболочки - помощь в обработке текста
  • Как разобрать таблицу для шаблона, если шаблон содержит пробелы
  • Постоянное обновление переменной в фоновом режиме
  • 3 Solutions collect form web for “Как удалить количество строк из файла повторно”

    Похоже, вы ищете uniq .

    Или, из комментариев:

     sed '2,5d;7,10d;12,$d' 

    Если вы действительно спрашиваете, выводится каждая n-я строка файла:

     cat file | perl -ne '$. % 5 or print' 

    Возможно:

     cat file | perl -ne '($.-1) % 5 or print' 

    используйте следующую команду

     cat filename | sort | uniq > filename2 
    Linux и Unix - лучшая ОС в мире.