Afficher la sortie de la commande ou le contenu du fichier au format colonne
En avez-vous marre de voir une sortie de commande ou un contenu de fichier encombré sur le terminal ? Ce court article montrera comment afficher le résultat d'une commande ou le contenu d'un fichier dans un format « en colonnes » très clair.
Nous pouvons utiliser l'utilitaire column pour transformer une entrée standard ou le contenu d'un fichier sous 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 comprendre plus clairement, nous avons créé le 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 démontrer cela, 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 de colonne, nous pouvons afficher un résultat beaucoup plus clair comme suit, où le -t
aide à déterminer le nombre de colonnes que contient l'entrée et crée un tableau et le -s
spécifie un caractère délimiteur.
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 le commutateur -x
et pour demander à la commande de colonne de considérer les lignes vides (qui sont ignorées par défaut), inclure l'indicateur -e
.
Voici un autre exemple pratique, exécutez les deux commandes ci-dessous et voyez la différence pour mieux comprendre que la colonne magique 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 bien formatée dans un fichier, utilisez la redirection de sortie comme indiqué.
mount | column -t >mount.out
Pour plus d’informations, consultez la page de manuel des colonnes :
man column
Vous aimerez peut-être également lire les articles connexes suivants.
- Comment utiliser Awk et les expressions régulières pour filtrer du texte ou une chaîne dans des fichiers
- Comment rechercher et trier des fichiers en fonction de la date et de l'heure de modification sous Linux
- 11 commandes Linux avancées « Grep » sur les classes de caractères et les expressions entre crochets
Si vous avez des questions, utilisez le formulaire de commentaires ci-dessous pour nous écrire. Vous pouvez également partager avec nous tous les trucs et astuces utiles en ligne de commande sous Linux.