Как я могу удалить текст перед шаблоном (————–) в Linux

Есть один файл, в котором я получаю данные после шаблона -------------- (14 штрихов). Я хочу сгенерировать файл, в котором я получу текст после 14 штрихов.

Имя файла – portals.csv а текст в файле выглядит так:

 xyz anch skjbsejkbkjsbj 183y83yy3e 29292.2982 282823 CSV File begin -------------- ip,time,release 

3 Solutions collect form web for “Как я могу удалить текст перед шаблоном (————–) в Linux”

Предполагая, что вы хотите все после строки тире, а не только одну строку:

 $ sed -E '0,/^-{14}/d' portals.csv ip,time,release some,more,data 

0,/-{14}/ соответствует от начала файла ( 0 ) до первой строки, которая начинается с четырнадцати тире. d удаляет совпавшие строки. -E говорит sed использовать расширенные регулярные выражения, альтернативой будет /^-\{14\}/ . (Это также будет соответствовать линиям с более чем четырьмя штрихами или любым последующим мусором после них.)

Использование 0 в качестве начала диапазона является расширением GNU. Со стандартным sed, что-то вроде этого:

 < portals.csv sed -nE -e '/^-{14}/,$p' | sed 1d 

( sed -E '1,/^-{14}/d' потерпит неудачу, если строка черточек будет первой строкой файла.)

 perl -0pe 's/^.*-{14}//g' portals.csv > portals_clean.csv 

Или, если вы используете целые строки, вы можете использовать grep

 grep -A 1 -P "-{14}" portals.csv | tail -n 1 > portals_clean.csv 

Используя sed:

  sed -E -n '/^-{14}/{n;p;}' file > newfile 

Использование AWK:

  awk '/^--------------/{p=1;next}p' file > newfile 
  • Разделить файл с разделителями на несколько файлов на основе значений в одном столбце
  • Удалить строковый файл после пробела
  • Вывести обе строки при изменении столбца
  • sed с несколькими командами, могу ли я использовать флаг w (write)?
  • Рекурсивно найти и заменить содержимое одного файла, используя ключ из другого файла
  • Добавить во второй столбец
  • REGEX поиск и замена с помощью sed или другой команды
  • Отфильтровать 2-й вхождение текста между цитатами с помощью sed?
  • Заменить строку в одном файле содержимым другого файла при совпадении столбца
  • подсчитать количество строк, предоставленных скрипту Python до и после задачи
  • Как удалить инверсные пары совпадений?
  • Linux и Unix - лучшая ОС в мире.