Cet article fait suite à : Utiliser cat pour rassembler des fichiers splittés sous Linux/BSD/Mac OS X

 

Vous savez déjà comment rassembler n fichiers splittés ? Mais comment faire pour l'opération inverse : découper un gros fichiers en n fichiers plus petits ?

 

Il faut tout simplement utiliser la commande split (Linux / Mac OS X / BSD / ...)

C'est une commande très pratique.

 

Dans mon cas j'y ai eu recours récemment car je devais extraire d'un point A une image ISO de 6 Go.

Evidemment dans ces cas là on n'a plus de DVD double couche ou on a oublié son disque dur externe / clef usb ou autre...

Mes seuls outils ? Un ordinateur sous Linux, un graveur et des DVD+RW simple couche (donc de 4.7 Go).

Qu'à cela ne tienne : je vais splitter mon gros fichier de 6 Go en plus petits fichiers (par exemple de 1.5 Go chacun) et les graver sur 2 DVD+RW. Arrivé au point B je n'aurais plus qu'à les rassembler avec cat (beaucoup plus standard qu'un HJSplit) et graver l'ISO sur un DVD double couche.

 

Il existe bien d'autres exemple :

  • "Mon fichier est trop gros pour passer par mail comment faire ?"
  • "J'aimerais segmenter un gros fichier pour le mettre à disposition sur un site d'hébergement en ligne (type RapidShare ou MegaUpload)
  • Segmenter de gros fichiers d'archives pour qu'ils tiennent sur divers supports (dont la taille peut varier comme des disquettes, clefs, DVD, Blu-Ray Discs, etc.)

 

L'utilisation du produit est on ne peut plus simple, ouvrez un terminal et tapez :

split -b 1024k gros_fichier.txt

... va découper notre fichier en petits fichiers de 1024 Ko sans effacer l'original. Par défaut les fichiers commencerons par le préfixe x : xaa, xab, xac, ...

 

Si l'on veut avoir un préfixe il faut le spécifier :

split -b 1024k gros_fichier.txt gros_fichier_splitte.txt.

... donnera : gros_fichier_splitte.txt.aa, gros_fichier_splitte.txt.ab, ...

 

Si l'on préfère des chiffres au lieu des lettres (-d) :

split -d -b 1024k gros_fichier.txt gros_fichier_splitte.txt.

... donnera : gros_fichier_splitte.txt.00, gros_fichier_splitte.txt.01, ...

 

Si l'on sait à l'avance qu'il nous faudra plus de 100 splits (ou moins de 11) on peut spécifier la longueur du "suffixe" (-a) :

split -a 3 -d -b 1024k gros_fichier.txt gros_fichier_splitte.txt.

... donnera : gros_fichier_splitte.txt.000, gros_fichier_splitte.txt.001, ...

 

Vous l'aurez compris : il faut faire attention à la taille des splits pour ne pas se retrouver avec un nombre inadapté de petits fichiers !

 

Pour finir nul besoin donc de passer par des WinZip, WinRar ou que sais-je encore si votre seul objectif est de découper un gros fichier :p

Tag(s) : #bash

Partager cet article

Repost 0