La création de scripts sous Linux nécessite une solide connaissance des commandes fournies par le shell. Certains d'entre eux sont assez utiles et quelque peu complexes à utiliser comme la commande rm et d'autres sont plus simples comme la commande basename. Ce dernier, bien qu'avec une utilité quelque peu limitée, est essentiel dans de nombreux scripts.
La commande du nom de base
Dans la documentation de la commande, nous avons la définition suivante
Imprimer NAME avec tous les composants de répertoire principaux supprimés. Si spécifié, supprime également un SUFFIXE final.
En plus de cette définition, il faut dire que le basename
appartient à la suite GNU Core Utils qui est présente dans toutes les distributions Linux. Ainsi, contrairement à la commande nmap, nous n'avons rien à installer et lorsque nous ouvrons le terminal, nous pouvons l'utiliser.
Cette commande peut ne pas sembler très utile pour un utilisateur régulier, mais elle est largement utilisée dans les scripts de configuration où elle est requise.
Utilisation de la commande basename
La commande basename est assez simple à utiliser et a une syntaxe commune comme le reste de la famille de commandes Unix.
La syntaxe de base de la commande est la suivante
basename NAME [SUFFIX]
ou si vous utiliserez certaines de ses options :
basename OPTION... NAME...
Certaines des options fournies par le basename
commande sont les suivantes :
-a, --multiple support multiple arguments and treat each as a NAME -s, --suffix=SUFFIX: This option removes a trailing SUFFIX; implies -a -z, --zero: end each output line with NUL, not newline
Utilisation de la commande basename
Comme nous l'avons remarqué, la commande basename extrait le nom du fichier ou du dossier que nous attribuons en paramètre, son utilisation est donc la suivante
basename /etc/
Cela nous donnera la sortie suivante à l'écran :
etc
Nous pouvons également l'appliquer aux fichiers :
basename /etc/nsswitch.conf
Sortie :
nsswitch.conf
Aussi, nous pouvons définir un suffixe avec le -s
option qui sera omise dans la sortie d'écran :
basename -s .conf /etc/nsswitch.conf
Sortie :
nsswitch
De cette façon, vous pouvez définir ce que vous souhaitez afficher lors de l'exécution de la commande.
Si vous souhaitez en savoir plus sur le fonctionnement de la commande, vous pouvez consulter l'aide du menu principal
basename --help
Ou visitez la section dédiée à basename
sur le site Web de GNU Core Utils.
Conclusion
La commande basename est assez simple mais peut être très utile dans les scripts de configuration ou la gestion de fichiers via terminal.