Commandes Linux · 2 min read · Sep 18, 2025

Commande unexpand de Linux expliquée pour les débutants (avec des exemples)

Travailler sur la ligne de commande Linux nécessite d’apprendre à effectuer rapidement certaines tâches répétitives. Une de ces tâches dans laquelle vous pourriez vous retrouver tôt ou tard est la conversion des espaces en tabulations ou vice-versa. Dans ce tutoriel, nous allons discuter d’un utilitaire en ligne de commande - appelé unexpand - qui sera d’une grande aide dans de telles situations.

Mais avant de commencer, il convient de mentionner que tous les exemples de cet article ont été testés sur une machine Ubuntu 16.04 LTS.

Commande unexpand de Linux

La commande unexpand vous permet de convertir des espaces en tabulations. Voici sa syntaxe :

unexpand [OPTION]... [FICHIER]...

Et voici comment la page de manuel la décrit :

Convertir les espaces dans chaque FICHIER en tabulations, écrivant sur la sortie standard. Sans FICHIER, ou lorsque FICHIER est -, lire l'entrée standard.

Voici quelques exemples sous forme de questions-réponses qui devraient vous donner une bonne idée de la façon dont fonctionne la commande unexpand.

Q1. Comment utiliser la commande unexpand ?

Supposons que vous ayez un fichier avec du texte contenant des tabulations. Maintenant, pour une raison quelconque, vous convertissez ces tabulations en espaces en utilisant la commande expand, et maintenant vous souhaitez convertir les espaces en tabulations à nouveau, dans ce cas, vous pouvez utiliser la commande unexpand.

Par exemple :

unexpand fichier1

L’outil produit la sortie convertie sur stdout. Donc, pour l’enregistrer, vous pouvez la rediriger vers un fichier. Par exemple :

unexpand fichier1 > fichier2

Il convient de mentionner qu’en défaut, cet outil ne fonctionne que sur les espaces initiaux. Vous pouvez utiliser l’option -a pour indiquer à l’utilitaire que vous souhaitez convertir tous les espaces/espaces en tabulations.

Q2. Comment forcer unexpand à ne convertir que les espaces initiaux/principaux ?

L’outil fournit une option qui le force à ne convertir que les espaces ou les blancs initiaux (même si l’option -a est présente). L’option en question est –first-only.

unexpand --first-only -a fichier1 > fichier2

Q3. Que fait l’option -t ?

Eh bien, l’option -t a plusieurs rôles. Elle accepte soit un seul nombre, soit une liste de nombres séparés par des virgules. Lorsque vous passez un seul nombre (disons ‘n’), la commande unexpand s’assure de compresser les espaces dans le fichier en tabulations tous les ‘n’ positions.

Par exemple, pour faire en sorte que l’outil compresse les espaces en tabulations tous les 3 positions, utilisez cette option de la manière suivante :

unexpand -t 3 fichier1 > fichier2

D’autre part, si cette option reçoit une liste de nombres séparés par des virgules, l’outil place des arrêts de tabulation à ces positions spécifiques.

unexpand -t 1,2,3 fichier1 > fichier2

Q4. Comment faire en sorte qu’unexpand lise l’entrée depuis STDIN ?

C’est assez facile - il suffit d’exécuter la commande sans aucun nom de fichier en entrée (utilisez ctrl+D pour indiquer à l’utilitaire que vous avez terminé).

Voici de quoi je parle :

unexpand

Conclusion

En fonction du type de travail que vous faites, la commande unexpand pourrait être d’une grande aide. Dans ce tutoriel, nous avons discuté de la majorité des options de ligne de commande que cet outil propose. Pour en savoir plus, rendez-vous sur sa page de manuel.

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.