Você pode fazer isso com sed
:
sed '1,/^KEYWORD$/d'
Isso excluirá (omitirá) todas as linhas do começo do fluxo até "KEYWORD", inclusive.
Eu tenho um arquivo, com uma "KEYWORD" no número de linha n. Como posso imprimir todas as linhas a partir da linha n + 1 até o final?
Por exemplo, aqui eu mentiria para pro = int apenas linhas DDD e EEE
AAA
BBB
CCC
KEYWORD
DDD
EEE
Uma alternativa pode ser grep
em combinação com o sinal -A
, por exemplo
grep -A10000 KEYWORD file
Em que 10000
é apenas um grande número para indicar a quantidade de linhas até o final do arquivo, o que, para seu uso diário prático, deve ser suficiente.
Caso contrário, você poderia usar a quantidade de linhas no arquivo como parâmetro como este
grep -A$(wc -l file | cut -d' ' -f1) KEYWORD file
Mas isso é provavelmente um exagero (e não é mais fácil de lembrar do que a alternativa sed
dada)
Use sed, imprimindo da correspondência KEYWORD até o final do arquivo e, em seguida, usando tail para remover a linha KEYWORD.
sed -n '/KEYWORD/,$p' file | tail -1