Aqui está uma solução em awk
:
$ cat testfile
foo
asdkjasjdka
bar
kjsdksjdkssd
$ awk -v n=2 'NR % 2 == 1 { print } NR % 2 == 0 { print substr($0, 1, n) }' testfile
foo
as
bar
kj
Eu quero enviar parte de um arquivo de texto muito grande para o trabalho downstream (python).
Basicamente, quero obter todas as linhas ímpares e os primeiros n caracteres das linhas pares, mas ainda quero manter a ordem da linha.
A razão é que as linhas pares são muito longas, mas eu só preciso dos primeiros caracteres. Isso pode tornar a leitura do arquivo em python muito mais rápido.
Tags command-line awk sed