Como posso imprimir o conteúdo de um arquivo menos tudo, incluindo e abaixo da linha acima da primeira ocorrência de um padrão?
Digamos que o padrão seja "^Previous" na linha 15; então eu gostaria de imprimir as linhas 1--13.
Como posso imprimir o conteúdo de um arquivo menos tudo, incluindo e abaixo da linha acima da primeira ocorrência de um padrão?
Digamos que o padrão seja "^Previous" na linha 15; então eu gostaria de imprimir as linhas 1--13.
sed
pode fazer isso sozinho:É muito simples: ative o modo silencioso, use uma janela deslizante (via
N
eD
, para que haja sempre duas linhas no espaço do padrão),q
casoPATTERN
contrário,P
pinte a primeira linha no espaço do padrão e reinicie o ciclo.Com
gnu sed
ele é ainda mais curto, pois pode seQ
adequar sem impressão automática, para que você possa pular o modo silencioso:Que tal o beijo