paste
est une commande qui vous permet de fusionner horizontalement des lignes de fichiers. Il génère des lignes constituées des lignes séquentiellement correspondantes de chaque fichier spécifié en tant qu'argument, séparées par des tabulations.
Dans ce tutoriel, nous allons vous expliquer comment utiliser le paste
commande.
Comment utiliser le paste
Commande #
paste
est l'un des utilitaires de ligne de commande Linux et Unix les moins connus et les moins utilisés.
La syntaxe générale du paste
commande est la suivante :
paste [OPTION].. [FILE]...
Si aucun fichier d'entrée n'est fourni ou lorsque -
est donné en argument, paste
utilise l'entrée standard.
Supposons que nous ayons les fichiers suivants :
file1Iron Man
Thor
Captain America
Hulk
Spider Man
file2Black Widow
Captain Marvel
Dark Phoenix
Nebula
Lorsqu'il est invoqué sans option paste
lira tous les fichiers donnés en arguments et fusionnera horizontalement les lignes correspondantes des fichiers, séparées par un espace :
paste file1 file2
Iron Man Black Widow
Thor Captain Marvel
Captain America Dark Phoenix
Hulk Nebula
Spider Man
Au lieu d'afficher la sortie à l'écran, vous pouvez la rediriger vers un fichier en utilisant le >
, >>
opérateurs :
paste file1 file2 > file3
Si le fichier n'existe pas, il sera créé. Le >
écrasera un fichier existant, tandis que le >>
l'opérateur ajoutera la sortie au fichier.
Le -d
, -delimiters
L'option vous permet de spécifier une liste de caractères à utiliser comme délimiteurs au lieu de la valeur par défaut TAB
séparateur.
Chaque délimiteur est utilisé consécutivement. Lorsque la liste est épuisée, paste
recommence à partir du premier caractère de délimitation.
Pour utiliser le _
(trait de soulignement) comme délimiteur au lieu de TAB
, vous taperiez :
paste -d '_' file1 file2
Iron Man_Black Widow
Thor_Captain Marvel
Captain America_Dark Phoenix
Hulk_Nebula
Spider Man_
Voici un exemple d'utilisation de deux délimiteurs :
paste -d '%|' file1 file2 file1
Les lignes du premier et du deuxième fichier sont séparées par le premier caractère de la liste des délimiteurs. Les deuxième et troisième lignes de fichier sont séparées par le deuxième délimiteur.
Si plusieurs fichiers ont été donnés, paste
recommence depuis le début de la liste.
Iron Man%Black Widow|Iron Man
Thor%Captain Marvel|Thor
Captain America%Dark Phoenix|Captain America
Hulk%Nebula|Hulk
Spider Man%|Spider Man
Le -s
, --serial
l'option indique paste
pour afficher les lignes d'un fichier à la fois au lieu d'une ligne de chaque fichier.
paste -s file1 file2
La commande fusionnera toutes les lignes du fichier donné en lignes séparées :
Iron Man Thor Captain America Hulk Spider Man
Black Widow Captain Marvel Dark Phoenix Nebula
Lorsqu'il est utilisé avec le -z
, --zero-terminated
option, paste
utilise un caractère nul pour délimiter les éléments au lieu du caractère de saut de ligne par défaut. Ce comportement est pratique lorsque vous paste
est utilisé en combinaison avec find -print0
et xargs -0
commandes pour gérer les noms de fichiers contenant des caractères spéciaux.
Conclusion #
Le paste
La commande est utilisée pour fusionner les lignes correspondantes de fichiers donnés.
Si vous avez des questions ou des commentaires, n'hésitez pas à laisser un commentaire.