Você pode especificar intervalos antes de seus comandos no formulário from,to
.
1,4p
imprimiria as linhas 1-4.
Dado um arquivo de tamanho gigantesco, posso editar com ed e emitir o seguinte comando.
g/real/p
Que imprimirá todas as linhas contendo 'real'.
O que eu quero fazer é imprimir o primeiro 20.
Eu sei sed, grep, head, etc. Mas eu quero melhorar minhas habilidades ed.
Você pode especificar intervalos antes de seus comandos no formulário from,to
.
1,4p
imprimiria as linhas 1-4.
Aqui está uma maneira:
ed -s infile <<IN
v/PATTERN/d # delete all lines NOT matching PATTERN
,w !head -n20 # pass the addressed lines as input to shell command
u # undo deletion: not needed if you don't save changes
q # quit editor
IN
Tags regex