Recherche de site Web

Affichage de la sortie de la commande ou du contenu du fichier au format colonne


En avez-vous marre d’afficher une sortie de commande encombrée ou le contenu d’un fichier sur le terminal. Ce court article montrera comment afficher la sortie d’une commande ou le contenu d’un fichier dans un format « en colonne » très clair.

Nous pouvons utiliser l’utilitaire de colonne pour transformer une entrée standard ou le contenu d’un fichier en forme de tableau de plusieurs colonnes, pour une sortie beaucoup plus claire.

Lire aussi : 12 commandes utiles pour filtrer le texte afin d’effectuer des opérations de fichiers efficaces sous Linux

Pour y voir plus clair, nous avons créé un fichier suivant « tecmint-authors.txt » qui contient une liste des 10 principaux noms d’auteurs, le nombre d’articles écrits et le nombre de commentaires qu’ils ont reçus sur l’article jusqu’à présent.

Pour le démontrer, exécutez la commande cat ci-dessous pour afficher le fichier tecmint-authors.txt.

$ cat tecmint-authors.txt
Exemple de sortie
pos|author|articles|comments
1|ravisaive|431|9785
2|aaronkili|369|7894
3|avishek|194|2349
4|cezarmatei|172|3256
5|gacanepa|165|2378
6|marintodorov|44|144
7|babin lonston|40|457
8|hannyhelal|30|367
9|gunjit kher|20|156
10|jesseafolabi|12|89

En utilisant la commande column, nous pouvons afficher une sortie beaucoup plus claire comme suit, où le -t aide à déterminer le nombre de colonnes que l’entrée contient et crée une table et le -s spécifie un caractère de délimitation.

$ cat tecmint-authors.txt  | column -t -s "|"
Exemple de sortie
pos  author         articles  comments
1    ravisaive      431       9785
2    aaronkili      369       7894
3    avishek        194       2349
4    cezarmatei     172       3256
5    gacanepa       165       2378
6    marintodorov   44        144
7    babin lonston  40        457
8    hannyhelal     30        367
9    gunjit kher    20        156
10   jesseafolabi   12        89

Par défaut, les lignes sont remplies avant les colonnes, pour remplir les colonnes avant de remplir les lignes, utilisez l’option -x et pour indiquer à la commande de colonne de considérer les lignes vides (qui sont ignorées par défaut), incluez l’indicateur -e.

Voici un autre exemple pratique, exécutez les deux commandes ci-dessous et voyez la différence pour mieux comprendre la magie que la colonne peut faire

$ mount
mount | column -t
Exemple de sortie
sysfs        on  /sys                             type  sysfs            (rw,nosuid,nodev,noexec,relatime)
proc         on  /proc                            type  proc             (rw,nosuid,nodev,noexec,relatime)
udev         on  /dev                             type  devtmpfs         (rw,nosuid,relatime,size=4013172k,nr_inodes=1003293,mode=755)
devpts       on  /dev/pts                         type  devpts           (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs        on  /run                             type  tmpfs            (rw,nosuid,noexec,relatime,size=806904k,mode=755)
/dev/sda10   on  /                                type  ext4             (rw,relatime,errors=remount-ro,data=ordered)
securityfs   on  /sys/kernel/security             type  securityfs       (rw,nosuid,nodev,noexec,relatime)
tmpfs        on  /dev/shm                         type  tmpfs            (rw,nosuid,nodev)
tmpfs        on  /run/lock                        type  tmpfs            (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs        on  /sys/fs/cgroup                   type  tmpfs            (rw,mode=755)
cgroup       on  /sys/fs/cgroup/systemd           type  cgroup           (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/
....

Pour enregistrer la sortie correctement formatée dans un fichier, utilisez la redirection de sortie comme indiqué.

$ mount | column -t >mount.out

Pour plus d’informations, reportez-vous à la page de manuel des colonnes :

$ man column 

Vous pouvez également lire les articles connexes suivants.

  1. Comment utiliser awk et les expressions régulières pour filtrer du texte ou des chaînes dans des fichiers
  2. Comment trouver et trier des fichiers en fonction de la date et de l’heure de modification sous Linux
  3. 11 commandes Linux avancées 'grep' sur les classes de caractères et les expressions de crochets

Si vous avez des questions, utilisez le formulaire de commentaire ci-dessous pour nous écrire. Vous pouvez également partager avec nous tous les conseils et astuces utiles de la ligne de commande sous Linux.

Articles connexes: