Het splitsen en samenvoegen van bestanden in Linux is een vrij eenvoudige taak waarmee we een bestand in verschillende kleinere bestanden kunnen fragmenteren, dit helpt ons bij veel gelegenheden om bestanden te fragmenteren die veel geheugenruimte in beslag nemen, hetzij om het naar externe opslageenheden te transporteren of voor beveiligingsbeleid zoals het onderhouden van gefragmenteerde en gedistribueerde kopieën van onze gegevens. Voor dit eenvoudige proces zullen we twee belangrijke commando's split en cat.
Wat is gesplitst?
Is een Comando voor systemen Unix waarmee we een bestand in meerdere kleinere kunnen verdelen, het creëert een reeks bestanden met de extensie en een correlatie met de oorspronkelijke bestandsnaam, waardoor we de grootte van de resulterende bestanden kunnen parametriseren.
Om in de reikwijdte en kenmerken van dit commando te duiken, kunnen we man split uitvoeren waar we de gedetailleerde documentatie kunnen zien
Wat is een kat?
Voor zijn deel, linux cat-opdracht stelt u in staat om bestanden eenvoudig en efficiënt samen te voegen en weer te geven, dat wil zeggen dat we met dit commando verschillende tekstbestanden kunnen bekijken en we kunnen ook opgedeelde bestanden aaneenschakelen.
Op dezelfde manier als bij split kunnen we de gedetailleerde documentatie van cat bekijken met het commando man cat.
Bestanden splitsen en samenvoegen in Linux met behulp van split en cat
Als je eenmaal de basisprincipes van de split- en cat-commando's kent, zal het vrij eenvoudig zijn om bestanden te splitsen en samen te voegen in Linux. Voor een algemeen voorbeeld waarin we een bestand met de naam test.7z dat 500 mb weegt, willen verdelen in verschillende 100 mb-bestanden, hoeven we alleen maar de volgende opdracht uit te voeren:
$ split -b 100m tes.7z dividido
Met deze opdracht worden 5 bestanden van 100 mb geretourneerd die het resultaat zijn van het originele bestand, dat de naam zal hebben divedaa, verdeeldab enzovoort. Het is vermeldenswaard dat als we de parameter toevoegen -d naar de vorige instructie zou de naam van de resulterende bestanden numeriek zijn, dat wil zeggen, verdeeld01, gedeeld02 ...
$ split -b -d 100m tes.7z dividido
Om nu weer deel te nemen aan de bestanden die we hebben gesplitst, hoeven we alleen maar de volgende opdracht uit te voeren vanuit de map waar de bestanden zijn opgeslagen:
$ cat dividido* > testUnido.7z
Met deze kleine maar eenvoudige stappen kunnen we bestanden in Linux op een eenvoudige en gemakkelijke manier splitsen en samenvoegen, ik hoop dat je het leuk vindt en tot ziens in een toekomstig artikel.
werkt dit ook voor videobestanden? Ik bedoel, als ik een film heb die is onderverdeeld in 2 video's (de ene voortzetting van de andere), kan ik ze dan samenvoegen tot een enkele video met alle inhoud?
Nee, dat is een ander onderwerp !!!, je moet het doen met een video-editor. Dit wordt gebruikt om een videobestand in veel delen op te splitsen en er vervolgens weer aan toe te voegen, maar het is bijvoorbeeld niet mogelijk om alle delen van de video afzonderlijk af te spelen, omdat ze geen koptekst hebben, de hele video wordt pas afgespeeld als deze is doe opnieuw mee. Als u het niet begrijpt, vraag het dan opnieuw.
Oh! Heel erg bedankt voor de verduidelijking
Pas op met de volgorde van de kat!
Ik denk dat het niet zo goed werkt, want afhankelijk van het videoformaat dat je gebruikt, bevat het bestand zelf informatie over de duur van de video en andere dingen, dus als je deze methode gebruikt om twee video's samen te voegen, is dit hoogstwaarschijnlijk dat de inhoud van het tweede bestand toevoegt aan het eerste op gegevensniveau, maar wanneer u het bestand probeert af te spelen, worden de twee video's niet achter elkaar afgespeeld, of krijgt u een fout in het bestand of wordt alleen het eerste afgespeeld, alsof u een hele video opneemt en partijen kunt u de twee partijen niet afzonderlijk spelen.
Groeten.
Hoe moet ik alle bestanden in een map comprimeren tot afzonderlijke bestanden? in map1 is er bijvoorbeeld file1 file2 en file3 en ik wil alles behalve individueel gecomprimeerd file1.7zip file2.7zip file3.7zip
Het werkt voor de images.iso?
In dit proces kan er een beetje corruptie optreden en het bestand beschadigen?
Wanneer ik een bestand probeer te splitsen met behulp van split, krijg ik een invoer- / uitvoerfout
Wat kan ik doen om het op te lossen? 🙁