Aflați cum să împărțiți un fișier mare în mai multe fișiere mai mici folosind comanda split pe Linux.
Linux oferă o gamă largă de comenzi pentru manipularea și procesarea textului, inclusiv comanda split. Cu split, puteți împărți cu ușurință fișiere mari în altele mai mici sau puteți extrage anumite porțiuni ale unui fișier pe baza anumitor criterii.
Să explorăm cum să folosiți comanda split pentru a împărți fișierele în Linux. Indiferent dacă trebuie să extrageți anumite porțiuni dintr-un fișier mare sau să împărțiți un fișier în bucăți mai mici, comanda split vă poate ajuta să vă atingeți obiectivele cu ușurință.
Ce este comanda split?
Comanda split este un instrument popular de linie de comandă Linux creat de Torbjorn Granlund și Richard M. Stallman. După cum sugerează și numele, comanda split este folosită pentru a împărți un fișier în sub-fișiere mai mici.
Această comandă este utilă pentru gestionarea fișierelor mari sau când transferați fișiere prin rețele cu lățime de bandă limitată. Prin împărțirea unui fișier mare în părți mai mici, puteți reduce cantitatea de date care trebuie să fie transferate sau stocate la un moment dat. De asemenea, puteți inversa comanda split pentru a combina mai multe fișiere într-unul singur.
Sintaxa de comandă împărțită
Sintaxa de bază a comenzii split este:
împărțiți [OPȚIUNE]... [FIȘIER] [PREFIX]
- [OPȚIUNE]: Comanda split are diferite opțiuni pentru a decide cum doriți să fie împărțit fișierul și alte caracteristici specifice pe care ați putea fi interesat să le adăugați.
- [FIŞIER]: Aceasta este calea către fișierul pe care doriți să îl împărțiți.
- [PREFIX]: Aceasta se referă la prefixul subfișierelor.
Cum să utilizați comanda split
Puteți folosi comanda split pentru a împărți un fișier mare în fișiere mai mici după dimensiune sau lungime. Puteți chiar să alegeți numărul specific de fișiere mai mici pe care doriți.
Pentru demonstrație, vom folosi un fișier text numit fişier mare.txt. Vă rugăm să alegeți un fișier text cu mai multe linii și o dimensiune destul de mare pentru acest tutorial. Dacă nu aveți asta, puteți utiliza un editor de text Linux sau comanda cat pentru a lipi un text mare și a-l salva.
Împărțiți fișiere mari în funcție de numărul de linii
Puteți folosi comanda split pentru a împărți un fișier mare în fișiere mai mici, pe baza unui anumit număr de linii per fișier. Iată sintaxa:
split -l [număr de linii] [fișier de intrare] [prefix fișier de ieșire]
De exemplu, este posibil să doriți să împărțiți un fișier cu 210 de linii în fișiere de 50 de linii fiecare; ai primi cinci fișiere mai mici. Primele patru fișiere ar avea 50 de linii fiecare, iar al cincilea fișier ar conține doar 10 rânduri.
Pentru a împărți un fișier numit „largefile.txt” în fișiere mai mici de 100 de linii fiecare, rulați această comandă:
split -l 100 largefile.txt smallfile
Listați conținutul directorului folosind comanda ls, și veți vedea fișierele împărțite.
Împărțiți fișiere mari în funcție de dimensiune
De asemenea, puteți utiliza comanda split pentru a împărți un fișier mare în fișiere mai mici, pe baza unei anumite dimensiuni de fișier. Iată sintaxa de bază:
split -b [dimensiune în octeți] [fișier de intrare] [prefix fișier de ieșire]
Împărțiți largefile.txt în fișiere mai mici de 300 de octeți fiecare, rulând această comandă:
split -b 300 fişier mare.txt fişier mic
Iată rezultatul:
Împărțiți un fișier mare într-un anumit număr de fișiere
De asemenea, puteți împărți un fișier într-un număr fix de fișiere, indiferent de numărul de fișiere și octeți din ele. Faceți acest lucru folosind -n opțiune. Iată sintaxa:
split -n [număr de fișiere] [fișier de intrare] [prefix fișier de ieșire]
Pentru a împărți un fișier mare în cinci părți, executați această comandă:
split -n 5 fişier mare.txt fişier mic
Rezultatul ar trebui să arate astfel:
Modificați lungimea sufixului fișierelor împărțite
După cum probabil ați observat, lungimea implicită a sufixelor atașate la numele fișierului de ieșire este de două. De exemplu, smallfileaa, fișier micab, fișier micac, etc.
Pentru a modifica lungimea sufixului, utilizați -A opțiune. Iată sintaxa pentru modificarea lungimii sufixului:
split -a [lungimea sufixului] [fișierul de intrare] [prefixul fișierului de ieșire]
Puteți utiliza această opțiune de lungime a sufixului alături de alte comenzi împărțite. Pentru a împărți fișierul largefile.txt în 10 părți cu o lungime de sufix de 4, executați această comandă:
split -a 4 -n 10 fişier mare.txt fişier mic
Când enumerați conținutul directorului, rezultatul ar trebui să arate astfel:
Îmbinați mai multe fișiere cu cat
Vestea bună este că puteți întotdeauna îmbina fișierele împărțite împreună pentru a produce fișierul original. Pentru a îmbina fișierele divizate înapoi în fișierul original, utilizați comanda cat. Iată sintaxa pentru a face asta:
cat [fișiere divizate] > [fișier de ieșire]
Când utilizați comanda cat pentru a îmbina fișierele divizate, este important să specificați ordinea corectă a fișierelor divizate.
Comanda cat pur și simplu concatenează fișierele în ordinea specificată, așa că dacă fișierele nu sunt în ordinea corectă, fișierul îmbinat va fi corupt.
Într-un scenariu în care aveți multe fișiere divizate, de exemplu, o sută de fișiere divizate, ar fi greoi să introduceți fiecare fișier unul după altul și în ordinea corectă.
Aici intervine prefixul. Doar adăugarea unui semn asterisc (*) vă permite să îmbinați toate fișierele care încep cu acel prefix.
prefix pisică* > [fișier de ieșire]
Iată un exemplu de comandă care îmbină fișierele divizate smallfileaa, smallfileab, smallfileac, și smallfilead într-un singur fișier numit bigfile.txt:
cat smallfile* > bigfile.txt
Această comandă va concatena conținutul tuturor fișierelor împărțite care se potrivesc cu modelul fişier mic* și redirecționează rezultatul către un fișier nou numit bigfile.txt. De asemenea, va lista fișierele împărțite în ordine naturală pe baza numelui lor, care ar trebui să fie ordinea corectă pentru îmbinare.
Comanda split este doar unul dintre numeroasele instrumente pe care Linux le oferă pentru a vă ajuta să gestionați eficient fișierele mari, împărțindu-le în bucăți mai mici și mai ușor de gestionat.
Prin stăpânirea comenzilor de procesare a textului Linux, puteți economisi timp și resurse și puteți deveni mai eficient.