
Früher habe ich split -b 32m "file.bz2" "file.bz2.part-"
eine Datei aufgeteilt und dabei wurden mehr als 50 Teile erstellt. Beim Googeln habe ich herausgefunden, dass ich die Teile wie folgt wieder zusammensetzen kann: cat file.bz2.part-aa file.bz2.part-ab > file.bz2
, wobei alle über 50 Teile aufgelistet werden. Gibt es eine einfachere Möglichkeit, die Teile wieder zusammenzusetzen, bei der ich nicht mehr alle Teile explizit auflisten muss?
Ich verwende Fedora 12.
Antwort1
Dafür gibt es Platzhalter und Klammererweiterungen. Prüfen Sie, ob echo file.bz2.part-*
die Dateinamen in der gewünschten Reihenfolge zurückgegeben werden, und verwenden Sie cat file.bz2.part-* > file.bz2
diese Option, wenn dies der Fall ist. Andernfalls suchen Sie sich eine andere, komplexere Erweiterung, die dies tut.
Antwort2
split
erstellt seine Teildateinamen in aufsteigender lexikografischer Reihenfolge. Da Platzhaltererweiterungen die Dateien in lexikografischer Reihenfolge auflisten, cat file.bz2part-* > file.bz2
werden die Teile in der richtigen Reihenfolge aneinandergereiht.
Antwort3
Versuchen:
for i in `ls file.part-* |sort`; do echo $i; cat $i >> newfile; done