Apprenez à diviser un fichier volumineux en plusieurs fichiers plus petits à l'aide de la commande split sous Linux.

Linux fournit une large gamme de commandes pour la manipulation et le traitement de texte, y compris la commande split. Avec split, vous pouvez facilement diviser des fichiers volumineux en fichiers plus petits ou extraire des parties spécifiques d'un fichier en fonction de certains critères.

Explorons comment utiliser la commande split pour diviser des fichiers sous Linux. Que vous ayez besoin d'extraire des parties spécifiques d'un fichier volumineux ou de diviser un fichier en plus petits morceaux, la commande split peut vous aider à atteindre facilement vos objectifs.

Qu'est-ce que la commande split?

La commande split est un outil de ligne de commande Linux populaire créé par Torbjorn Granlund et Richard M. Stallman. Comme son nom l'indique, la commande split est utilisée pour diviser un fichier en sous-fichiers plus petits.

Cette commande est utile pour gérer des fichiers volumineux ou lors du transfert de fichiers sur des réseaux à bande passante limitée. En divisant un fichier volumineux en parties plus petites, vous pouvez réduire la quantité de données devant être transférées ou stockées à un moment donné. Vous pouvez également inverser la commande split pour combiner plusieurs fichiers en un seul.

instagram viewer

La syntaxe de commande split

La syntaxe de base de la commande split est :

diviser [OPTION]... [FICHIER] [PRÉFIXE]
  • [OPTION]: La commande split a différentes options pour décider comment vous voulez que le fichier soit divisé et d'autres fonctionnalités spécifiques que vous pourriez être intéressé à ajouter.
  • [DÉPOSER]: Il s'agit du chemin d'accès au fichier que vous souhaitez diviser.
  • [PRÉFIXE]: Il s'agit du préfixe des sous-fichiers.

Comment utiliser la commande split

Vous pouvez utiliser la commande split pour diviser un fichier volumineux en fichiers plus petits par taille ou longueur. Vous pouvez même choisir le nombre spécifique de fichiers plus petits que vous souhaitez.

Pour la démonstration, nous utiliserons un fichier texte nommé largefile.txt. Veuillez choisir un fichier texte avec plusieurs lignes et une taille assez grande pour ce tutoriel. Si vous ne l'avez pas, vous pouvez utiliser un éditeur de texte Linux ou la commande cat pour coller un gros texte et l'enregistrer.

Diviser les fichiers volumineux en fonction du nombre de lignes

Vous pouvez utiliser la commande split pour diviser un fichier volumineux en fichiers plus petits en fonction d'un nombre spécifique de lignes par fichier. Voici la syntaxe :

split -l [nombre de lignes] [fichier d'entrée] [préfixe du fichier de sortie]

Par exemple, vous pouvez diviser un fichier de 210 lignes en fichiers de 50 lignes chacun; vous obtiendrez cinq fichiers plus petits. Les quatre premiers fichiers auraient 50 lignes chacun et le cinquième fichier ne contiendrait que 10 lignes.

Pour diviser un fichier appelé "largefile.txt" en fichiers plus petits de 100 lignes chacun, exécutez cette commande :

split -l 100 grandfichier.txt petitfichier

Lister le contenu du répertoire en utilisant la commande ls, et vous verriez les fichiers fractionnés.

Diviser les fichiers volumineux en fonction de la taille

Vous pouvez également utiliser la commande split pour diviser un fichier volumineux en fichiers plus petits en fonction d'une taille de fichier spécifique. Voici la syntaxe de base :

split -b [taille en octets] [fichier d'entrée] [préfixe du fichier de sortie]

Divisez largefile.txt en fichiers plus petits de 300 octets chacun en exécutant cette commande :

split -b 300 grandfichier.txt petitfichier

Voici le résultat :

Fractionner un gros fichier en un nombre spécifique de fichiers

Vous pouvez également diviser un fichier en un nombre fixe de fichiers, quel que soit le nombre de fichiers et d'octets qu'ils contiennent. Vous faites cela en utilisant le -n option. Voici la syntaxe :

split -n [nombre de fichiers] [fichier d'entrée] [préfixe du fichier de sortie]

Pour diviser un fichier volumineux en cinq parties, exécutez cette commande :

split -n 5 grandfichier.txt petitfichier

Le résultat devrait ressembler à ceci :

Modifier la longueur du suffixe des fichiers fractionnés

Comme vous l'avez peut-être remarqué, la longueur par défaut des suffixes attachés au nom du fichier de sortie est de deux. Par exemple, petit fichieraa, petit fichierun B, petit fichiercourant alternatif, etc.

Pour changer la longueur du suffixe, vous utilisez le -un option. Voici la syntaxe pour modifier la longueur du suffixe :

split -a [longueur du suffixe] [fichier d'entrée] [préfixe du fichier de sortie]

Vous pouvez utiliser cette option de longueur de suffixe avec d'autres commandes fractionnées. Pour diviser le fichier largefile.txt en 10 parties avec une longueur de suffixe de 4, exécutez cette commande :

split -a 4 -n 10 grandfichier.txt petitfichier

Lorsque vous répertoriez le contenu du répertoire, la sortie devrait ressembler à ceci :

Fusionner plusieurs fichiers avec chat

La bonne nouvelle est que vous pouvez toujours fusionner des fichiers fractionnés pour produire le fichier d'origine. Pour fusionner les fichiers fractionnés dans le fichier d'origine, utilisez la commande chat. Voici la syntaxe pour le faire :

chat [fichiers fractionnés] > [fichier de sortie]

Lorsque vous utilisez la commande cat pour fusionner des fichiers fractionnés, il est important de spécifier l'ordre correct des fichiers fractionnés.

La commande cat concatène simplement les fichiers dans l'ordre spécifié, donc si les fichiers ne sont pas dans le bon ordre, le fichier fusionné sera corrompu.

Dans un scénario où vous avez de nombreux fichiers fractionnés, par exemple une centaine de fichiers fractionnés, il serait fastidieux de saisir chaque fichier l'un après l'autre et dans le bon ordre.

C'est là qu'intervient le préfixe. Le simple fait d'ajouter un astérisque (*) vous permet de fusionner tous les fichiers commençant par ce préfixe.

préfixe cat* > [fichier de sortie]

Voici un exemple de commande qui fusionne les fichiers fractionnés petitfichier, petitfichierab, petitfichierac, et petitfichier dans un seul fichier appelé grosfichier.txt:

cat petitfichier* > grosfichier.txt

Cette commande concaténera le contenu de tous les fichiers fractionnés qui correspondent au modèle petit fichier* et redirigez la sortie vers un nouveau fichier appelé bigfile.txt. Il listera également les fichiers fractionnés dans l'ordre naturel en fonction de leur nom, qui devrait être le bon ordre pour la fusion.

La commande split n'est qu'un des nombreux outils fournis par Linux pour vous aider à gérer efficacement les fichiers volumineux en les divisant en morceaux plus petits et plus faciles à gérer.

En maîtrisant les commandes de traitement de texte Linux, vous pouvez économiser du temps et des ressources et devenir plus efficace.