Ler um arquivo texto de 200.000 linhas é uma tarefa complicada… talvez impossível, dependendo do seu computador. Todavia, se você conseguir quebrar este arquivo em n arquivinhos menores, a vida fica mais fácil… especialmente se você conseguir dividir a tarefa com n coleguinhas de trabalho. 🙂
Abaixo está um comando do PowerShell que vai dividir seu mega arquivo texto em vários pequenos.
A ideia deste comando é criar um novo arquivo a cada n linhas lidas. Veja o exemplo abaixo:
$i=0; Get-Content d:\temp\teste.txt -ReadCount 100 | %{$i++; $_ | Out-File d:\temp\out_$i.txt}
O argumento -ReadCount 100 vai definir quantas linhas serão lidas de uma vez. No nosso caso, ela vai definir o tamanho de linhas que serão utilizadas para dividir o arquivo grande em varios pequenos. Neste exemplo, a cada 100 linhas, um novo arquivo texto será gerado. Se você aumentar este valor para 1000, a cada 1000 linhas, um novo arquivo será gerado.
Atenção: Quanto maior este numero, mais demorado será o processo de geração dos arquivos.
No comando Out-File d:\temp\out_$i.txt, definimos o local e o padrão para o nome dos arquivos que serão gerados. o $i será substituído por um sequencial. Exemplo: Se forem gerados 10 arquivos, os nomes deles serão: out_1.txt, out_2.txt, out_3.txt, etc…
Espero ter ajudado.
Latest posts by Breno RdV (see all)
- O que é Metaclass e como ela funciona. (#python #dev #metaclass) - janeiro 11, 2023
- Entenda a mágica dos Generators. (#python, #dev, #generator, #iterator) - dezembro 28, 2022
- Ordenando um DataFrame por múltiplas colunas. (#python #pandas #jupyter #dev #data) - agosto 3, 2022