como adicionar uma coluna de nome de linha em um arquivo no linux?

0

Eu tenho um arquivo enorme (50000 linhas) se parece com:

input.txt:

123315334262625363534
265343426272282827262
224343536625242536363
635352627273635373732
363353533637383838327
635342422325337474524

Eu quero adicionar números de linhas como a primeira coluna no início do arquivo, enquanto cada número é repetido duas vezes:

1 123315334262625363534
1 265343426272282827262
2 224343536625242536363
2 635352627273635373732
3 363353533637383838327
3 635342422325337474524

alguma sugestão por favor?

    
por zara 05.10.2015 / 20:47

3 respostas

1

com awk :

awk '{getline l; printf "%d %s\n%d %s\n", ++i, $0, i, l}' <in >out
    
por 05.10.2015 / 20:53
0

Outro awk

awk '{print ++count, $0}NR%2{count--}' <in >out

sed + nl

sed 'N;s/\n/@/' <in |
nl |
sed 's/\(\(^\s*[0-9]*\s*\).*\)@/\n/' >out
    
por 05.10.2015 / 21:50
0
perl -pe 'printf "%d ", .5+$./2'
    
por 06.10.2015 / 00:15