Aperçu
La commande `paste` récupère le contenu des mêmes numéros de ligne à partir de plusieurs fichiers d'entrée et les combine en une seule ligne. Par défaut, elle utilise un caractère de tabulation (tab) pour séparer le contenu de chaque fichier, mais vous pouvez spécifier un délimiteur personnalisé à l'aide de l'option `-d`.
Caractéristiques principales
- Fusionne horizontalement les lignes de plusieurs fichiers
- Permet de spécifier un délimiteur personnalisé (option `-d`)
- Traite les données depuis l'entrée standard ou des fichiers
- Utile pour créer des fichiers CSV ou TSV simples
Options principales
Délimiteur et méthode de traitement
Commande générée :
Essayez de combiner les commandes.
Description:
`paste` Exécute la commande.
Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.
Exemples d'utilisation
Utilisation de base (délimiteur tabulation)
echo "apple\nbanana" > fruits.txt
echo "red\nyellow" > colors.txt
paste fruits.txt colors.txt
Fusionne le contenu de deux fichiers ligne par ligne, séparé par une tabulation.
Fusion avec une virgule (,)
echo "apple\nbanana" > fruits.txt
echo "red\nyellow" > colors.txt
paste -d ',' fruits.txt colors.txt
Utilise l'option `-d` pour spécifier une virgule comme délimiteur.
Fusion avec un espace
echo "apple\nbanana" > fruits.txt
echo "red\nyellow" > colors.txt
paste -d ' ' fruits.txt colors.txt
Utilise un espace comme délimiteur pour fusionner le contenu des fichiers.
Utilisation de plusieurs délimiteurs en alternance
echo "1\n2\n3" > file1.txt
echo "A\nB\nC" > file2.txt
echo "X\nY\nZ" > file3.txt
paste -d ',=' file1.txt file2.txt file3.txt
Si plusieurs délimiteurs sont spécifiés avec l'option `-d`, ils sont appliqués circulairement à chaque fichier.
Utilisation avec l'entrée standard
echo "1\n2\n3" | paste -d ',' - <(echo "A\nB\nC")
Utilise `-` au lieu d'un nom de fichier pour utiliser l'entrée standard comme entrée pour `paste`.
Traitement séquentiel (option -s)
echo "1\n2\n3" > num.txt
echo "A\nB\nC" > char.txt
paste -s num.txt char.txt
Utilise l'option `-s` pour traiter d'abord toutes les lignes d'un fichier avant de passer au fichier suivant.
Conseils et précautions
La commande `paste` est un outil de traitement de texte simple mais puissant. Elle peut être particulièrement utile pour créer des fichiers CSV ou analyser des fichiers journaux.
Conseils d'utilisation
- **Utilisation de plusieurs délimiteurs** : Si vous spécifiez plusieurs caractères avec l'option `-d`, les délimiteurs sont appliqués circulairement à chaque fichier d'entrée. Par exemple, `paste -d ',|' file1 file2 file3` utilise `,` entre `file1` et `file2`, et `|` entre `file2` et `file3`.
- **Traitement de l'entrée standard** : L'utilisation de `-` au lieu d'un nom de fichier permet d'utiliser l'entrée standard comme entrée pour `paste`. C'est très utile dans les pipelines.
- **Combinaison avec d'autres commandes** : Vous pouvez effectuer des manipulations de données plus complexes en combinant `paste` avec d'autres commandes de traitement de texte comme `cut`, `awk`, `sed`. Par exemple, vous pouvez extraire des colonnes spécifiques avec `cut` puis les fusionner avec `paste`.
- **Traitement des lignes vides** : Si un fichier d'entrée contient des lignes vides, `paste` insère une chaîne vide à cet endroit et n'affiche que le délimiteur.