Sono sicuro che qualcuno ha avuto il bisogno di seguito, qual è un modo rapido per dividere un enorme file .gz per linea? Il file di testo sottostante ha 120 milioni di righe. Non ho abbastanza spazio su disco per comprimere l'intero file in una sola volta, quindi mi chiedevo se qualcuno fosse a conoscenza di uno script o uno strumento bash / perl che potesse dividere il file (o .zz o .txt interno) in file di linea 3x 40mn . cioè chiamandolo come:
bash splitter.sh hugefile.txt.gz 4000000 1
would get lines 1 to 40 mn
bash splitter.sh hugefile.txt.gz 4000000 2
would get lines 40mn to 80 mn
bash splitter.sh hugefile.txt.gz 4000000 3
would get lines 80mn to 120 mn
Forse sta facendo una serie di questi una soluzione o il gunzip -c richiederebbe abbastanza spazio per decomprimere l'intero file (cioè il problema originale): gunzip -c hugefile.txt.gz | testa 4000000
Nota: non riesco a ottenere un disco aggiuntivo.
Grazie!