Frage Wie teilt man größere Dateien in kleinere Teile auf?


Ich habe eine große Datei (8 GB für Beispiel). Wie kann ich es in mehrere Teile aufteilen, sagen wir 3 gleiche Teile, und danach, wie integriere ich sie später?


163
2017-07-26 14:42


Ursprung


Dies scheint ein Duplikat zu sein askubuntu.com/questions/12172/ ... - Jo-Erlend Schinstad
Bist du sicher "Das scheint zu sein"? Verdammt, es ist genau dasselbe. Außer hier ist jetzt mit einem Bonus von "Weitere Beispiele und Alternativen." - Luis Alvarado♦
Es kann hilfreich sein, wenn Sie mehr darüber sagen, warum Sie es teilen wollen, und ob Sie wollen, dass es nur in Byte-Teilzeichenfolgen aufgeteilt wird oder ob Sie dafür offen sind, dass sie in irgendeine Art von Fehlerprüfung oder -beschriftung eingeschlossen werden. Wenn es auf kleinere Medien oder für Netzwerkübertragungen gebracht werden soll, würde ich etwas wie aussehen Par2. - poolie
Querverweis: stackoverflow.com/questions/7764755/... - Trevor Boyd Smith
ein Liner für die gleiche Aufteilung nach N: (1.) geteilt durch Linien split --lines $ (($ (wc -l <$ {ihr_Dateiname}) / $ {N})) $ {your_filename} (2.) geteilt durch bytes split --bytes $ (($ (wc -c <$ {ihr_dateiname}) / $ {N})) $ {ihr_dateiname} - Trevor Boyd Smith


Antworten:


Es gibt mehrere Möglichkeiten, dies zu erreichen. Beginnen wir mit den grundlegenden.

Verwendung der Teilt und Katze Befehle:

Lets sagt, ich habe ein Bild und es ist zu groß (10MB). Alles was ich tue ist:

split --bytes=1M /path/to/image/image.jpg /path/to/image/prefixForNewImagePieces

und dann benutze ich cat:

cat prefixFiles* > newimage.jpg

Beispielsweise:

Angenommen, ich befinde mich in dem Ordner, in dem sich das Bild befindet:

split --bytes=1M myimage.jpg new

Wenn sich das Bild in einem Verzeichnis namens images befindet, können Sie dies auch tun:

split --bytes=1M images/myimage.jpg new

Wenn sich das Bild im Verzeichnis / home / cyrex / images befindet, können Sie Folgendes tun:

split --bytes=1M /home/cyrex/images/myimage.jpg new

(In allen oben genannten Fällen wird es sich teilen myimage.jpg in 1MB Stücken und den Namen der Stücke mit dem Wort neu voranstellen. So würden sie aussehen newaa, newab, newac, newad...)

Wenn Sie eine teilen Textdatei und möchte es nach Zeilen aufteilen:

split -l 1000 book.txt new

Dies teilt die Textdatei in Ausgabedateien von jeweils 1000 Zeilen auf. Dies ist eine andere Möglichkeit, eine Datei zu teilen und wird hauptsächlich für Textdateien wie Logs, SQL-Dumps, CSV-Dateien usw. verwendet.

Dann füge ich sie zusammen

cat new* > newimage.jpg

Dies ist ein Weg. Sie können sogar die Größe der geteilten Teile ändern. Ändern Sie einfach den Teil, der sagt --bytes=1M zu --bytes=1K für 1 Kilobyte oder 1G für Giga, oder eine andere Anzahl wie --bytes=4K für 4KB Stücke.

Verwenden Nautilus

Ein anderer Weg ist die Komprimierungsoption in der GUI von Nautilus. Sie haben die Möglichkeit, die zu komprimierenden Dateien in kleinere Megabyte zu teilen. Es ist einfach und einfach.

Noch ein anderer Weg ist die Verwendung 7z

Angenommen, Sie haben ein ISO-Image namens ubuntu.iso Du könntest das tun:

7z a -v5m -mx0 ubuntu.7z ubuntu.iso

Dies erstellt 5 MB große Dateien von der ubuntu.iso. Das -v5m ist die volumengröße, so können sie es zu 10, 12, 1, 3 und auch die m kann geändert werden k für kilobytes, etc; das -mx0 switch teilt 7-Zip mit, keine Komprimierung zu verwenden, also nur Daten in Teile aufzuteilen.

Auspacken einfach tun

7z x ubuntu.7z.001

Auf diese Weise extrahieren Sie die erste Datei und 7z beginnt, aus den folgenden Dateien in der Reihenfolge zu extrahieren. Sie können auch tun

7z e ubuntu.7z.001

Das hat hier den gleichen Effekt.


244
2017-07-26 15:05



Rar ist nicht enthalten, da es noch nicht Open Source ist (soweit ich weiß) und habe Tar nicht hinzugefügt, da ich nach einfachen Möglichkeiten gesucht habe, den Split zu machen. - Luis Alvarado♦
Fügen Sie auch gzip hinzu - 7zip benötigt ein Paket install iirc - Broam
Was ich weiß, Gzip (wie tar) haben keine einfache Möglichkeit, die komprimierte Datei zu teilen. In allen Fällen habe ich gesehen, wie sie mit dem Split-Befehl die komprimierte Datei "aufteilen". Es wäre also kein Befehl, sondern eine Gruppe von Befehlen, um einen einzigen Zweck zu erreichen, der mit einem einzigen wie Split oder 7z erledigt werden kann. Für die Installation von 7Zip (das ist das p7zip von p7zip-full-Paket) hat es mich nie nach iirc gefragt;). - Luis Alvarado♦
Splitten von Textdateien hinzugefügt. Habe das vergessen und heute musste ich einfach ein paar CSV-Dateien aufteilen. Dies ist für diejenigen Dumps, die eine bestimmte Anzahl von Zeilen haben müssen. - Luis Alvarado♦


Verwenden split -b Mit der entsprechenden Nummer können Sie drei Teile erhalten.

Anzahl könnte sein:

size=$(wc -c <"file name")
one_third=$((size/3+1))

Um es wieder zusammenzusetzen, benutze Kat

cat "file name"* > "file name"

Manuelle Seiten helfen dabei, die Details zu füllen.


9
2017-07-26 14:58





HJSplit

Ist ein beliebtes Freeware-Programm, um Dateien zu teilen und neu zu kombinieren. Das Programm ist unter Windows, Linux und einer Vielzahl anderer Plattformen verfügbar.

HJSplit für Linux ist ein Freeware File Splitter für Linux mit voller grafischer Benutzeroberfläche. HJSplit unterstützt Dateigrößen von über 100 Gigabyte, Split, Join / Recombine, MD5-Prüfsummen, Dateivergleich, "run ohne Installation" und das Programm ist voll portabel.

HJSplit für Linux muss nicht installiert werden und ist nicht auf spezielle Bibliotheken angewiesen. Entpacken Sie einfach das hjsplitlx.tar.gz-Archiv in ein Verzeichnis Ihrer Wahl und starten Sie das Programm über den Linux-Dateimanager oder ein Terminalfenster. Möglicherweise müssen Sie die Dateiberechtigungen des Programms auf "ausführbar" einstellen.

enter image description here


4
2017-07-26 14:53



Muss ich sagen, dass die Windows-Datei auch unter Linux funktioniert. - Uri Herrera
Es gibt mehrere Möglichkeiten, eine Datei zu teilen / zusammenzufügen, bevor Sie zu einem Programm wie diesem gehen müssen. Ich benutze lieber die leistungsstarken Optionen, die Linux bietet, und zum Teilen / Zusammenführen von Dateien gibt es einige ziemlich schnelle, sichere Möglichkeiten, dies zu tun. - Luis Alvarado♦
Es ist sicher, schnell, UND ist plattformübergreifend, einschließlich LINUX, es ist keine WINDOWS-only-Anwendung, die auch unter Linux läuft ... - Uri Herrera
Ich benutze HJSplit, es ist großartig und einfach. Sie müssen keine Befehle und Parameternamen eingeben, wenn Sie die Parameterwerte nur in Textfelder füllen können. - Matthew Read
Und ein kostenloser Download macht es schlimmer, weil? und muss ich sagen, dass er in der OP FREE SOFTWARE (was ist, es ist kostenlos) und was was Sie gemeint sind, heißt OPEN, gibt es einen Unterschied, den Sie kennen. - Uri Herrera


Gnom gespalten? http://gnome-split.org/

GNOME Split ist ein Tool, mit dem Sie Dateien aufteilen und zusammenführen können. Es ist in Java geschrieben und verwendet eine GTK + Benutzeroberfläche (dank dem java-gnome-Projekt). Ziel ist es, eine native Implementierung ähnlicher Projekte anzubieten, die mehrere Dateiformate (z. B. Xtremsplit) verarbeiten können.

http://www.omgubuntu.co.uk/2010/08/split-large-files-easily-in-ubuntu-with-gnome-split/


4
2017-07-26 20:47





HOZ - Hacha Öffnen Zource v1.65 - http://hoz.sourceforge.net/

enter image description here

Vom Entwickler:

OZ ist, was Sie einen "Dateisplitter" nennen würden. Sein Dateiformat ist das   Das gleiche wie das von der 'Hacha' Software, ein bekannter Splitter in   Spanien und Lateinamerika. HOZ ist eine Open-Source und tragbare C   Implementierung eines 'Hacha' kompatiblen Splitters.

HOZ ist kleiner und schneller als 'Hacha'.

Übrigens habe ich in Zource ein 'Z' anstelle eines 'S' verwendet, weil 'hoz' ist   "Sichel" auf Spanisch und seit "Hacha" ist das spanische Wort für   'Axt'...

Nach der Installation können Sie die Hoz-GUI verwenden, indem Sie sie löschen ghoz in einem Terminal. Die Bedienung ist so einfach, dass keine Erklärung benötigt wird, aber weitere Informationen können auf der Entwickler-Website erreicht werden.

Viel Glück!


3
2017-07-26 15:09





Holzfäller

Ein kostenloses Dienstprogramm zum Teilen und Zusammenführen von Dateien, das in Java entwickelt wurde. Es ist eine kleine Anwendung, die es einem Benutzer ermöglicht, jeden Dateityp in kleineren Größen in KB, MB oder GB zu teilen.

Es ist sowohl für Linux als auch für Windows verfügbar.

WoodCutter bietet 3 Möglichkeiten, die Originaldateien zusammenzuführen. WoodCutter erstellt eine Zusammenführungsdatei, die von der WoodCutter-Anwendung verarbeitet werden kann, um alle Dateien wieder zusammenzufügen. Falls der Empfänger von geteilten Dateien WoodCutter nicht installiert hat, kann auch die ursprüngliche Datei erhalten werden, da WoodCutter auch eine Batch-Datei und eine Shell-Skriptdatei erstellt, um die Dateien wieder zusammenzuführen. Die Stapeldatei wird in der Windows-Plattform verwendet und das Shell-Skript wird in Linux-Plattformen verwendet.

http://java-puzzle.blogspot.com/2009/07/woodcutter.html


0
2017-07-28 14:49



Die Lizenz ist "Freeware". Ich denke, ein Free-Software-Tool, das in den Repos ist, ist eine bessere Lösung. - Broam