Como posso cortar um arquivo grande no lugar? [duplicado]

7

Eu tenho um arquivo de texto muito grande, com cerca de 80 GB, e preciso cortar uma parte que fica entre duas linhas. A parte que eu preciso não é grande, e eu não tenho espaço suficiente no disco rígido para fazer coisas como:

head -n 10000000 filename > auxiliary_part
tail -n 1000 auxiliary_part > needed_part

Como faço isso?

    
por Roman 05.03.2011 / 03:17

2 respostas

20
sed -n '3,10p' big-file.txt > your-section.txt

Substitua 3 e 10 pelo seu intervalo de linhas. Os comandos sed basicamente dizem print ( p ) tudo entre as linhas 3 e 10. O -n diz para fazer isso silenciosamente, caso contrário, ele imprime a entrada como se estivesse lendo o arquivo.

    
por 05.03.2011 / 03:33
8

Encaixe um no outro:

head -n 10000000 filename | tail -n 1000 > needed_part
    
por 05.03.2011 / 03:23