com sed
:
sed -e n\;d <file
Com POSIX awk
:
awk 'FNR%2' <file
Se você tem mais awk
(como oawk
), precisa:
oawk 'NR%2 == 1' <file
com ex
:
$ ex file <<\EX
:g/$/+d
:wq!
EX
edita o arquivo no local.
-
g
marca um comando global -
/$/
corresponde a todas as linhas -
+d
elimina a linha seguinte -
wq!
salva todas as alterações
Essa abordagem compartilha o mesmo ideal com a abordagem sed
, exclua todas as próximas linhas do início da linha atual da linha 1.
com perl
:
perl -ne 'print if $. % 2' <file
e perl6
:
perl6 -ne '.say if $*IN.ins % 2' <file
perl6 -ne '.say if ++$ % 2' <file