GNU/Linux >> Tutoriels Linux >  >> Linux

Tutoriel de commande de nom de base Linux pour les débutants (avec exemples)

Parfois, lorsque vous travaillez sur la ligne de commande (en particulier lorsque vous traitez avec des scripts shell), vous pouvez être intéressé uniquement par le nom de fichier, mais ce qui vous est disponible est le chemin complet du fichier. Ainsi, l'exigence est de supprimer le composant de répertoire du chemin. Vous serez heureux de savoir qu'il existe une commande - basename - qui fait ce travail.

Dans ce didacticiel, nous aborderons les bases de 'basename' à l'aide d'exemples faciles à comprendre. Mais avant de passer à cela, il convient de mentionner que tous les exemples ici ont été testés sur une machine Ubuntu 16.04 LTS.

Commande nom de base Linux

La commande basename vous permet de supprimer les composants des noms de fichiers qui ne sont pas nécessaires. Voici la syntaxe de l'outil :

basename NAME [SUFFIX]
basename OPTION... NAME...

Et voici ce que dit la page de manuel :

basename - strip directory and suffix from filenames

Print NAME with any leading directory components removed. If specified, also remove a trailing
SUFFIX.
final.

Voici quelques exemples de style Q&A qui devraient vous donner une bonne idée du fonctionnement de la commande basename.

Q1. Comment fonctionne la commande basename ?

Par défaut, si vous exécutez la commande 'basename' avec un chemin complet vers un fichier en entrée, la commande renvoie le nom du fichier en sortie. Par exemple, lorsque j'ai exécuté la commande suivante :

basename /home/himanshu/Downloads/analytics.pdf

J'ai obtenu le résultat suivant :

analytics.pdf

Q2. Basename peut-il gérer plusieurs entrées ?

Oui il peut. Mais pour que cela se produise, vous devez utiliser l'option de ligne de commande -a. Par exemple, lorsque j'ai exécuté la commande suivante :

basename -a /home/himanshu/Downloads/analytics.pdf /home/himanshu/Pictures/test.png

Et voici le résultat que j'ai :

analytics.pdf
test.png

Q3. Comment créer également une extension de fichier de bande de nom de base ?

Parfois, vous voudrez peut-être uniquement récupérer le nom du fichier, mais pas son extension. Eh bien, cela peut être fait en utilisant l'option de ligne de commande -s (qui vous oblige à passer le suffixe en entrée).

Par exemple, la commande suivante :

basename -s .pdf /home/himanshu/Downloads/analytics.pdf

a produit cette sortie :

analytics

Q4. Comment faire en sorte que chaque sortie de ligne se termine par NUL ?

Par défaut, le caractère de nouvelle ligne est utilisé comme séparateur dans la sortie. Cependant, si vous le souhaitez, vous pouvez forcer basename à utiliser NUL comme séparateur. Cela peut être fait en utilisant l'option de ligne de commande -z.

Par exemple :

basename -az /home/himanshu/Downloads/analytics.pdf /home/himanshu/Pictures/test.png

Et voici le résultat :

analytics.pdftest.png

Vous ne voyez donc pas le caractère NUL ici. Pour cela, vous devez rediriger la sortie vers un fichier, puis ouvrir le fichier dans un éditeur comme vim. Voici ce que vim a montré :

Conclusion

Comme vous pouvez le voir, basename n'est pas une commande très riche en fonctionnalités - les options qu'elle fournit sont limitées, et la plupart d'entre elles ont été discutées ici dans ce tutoriel. Une fois que vous avez fini de vous entraîner, rendez-vous sur la page de manuel de l'outil pour en savoir plus.


Linux
  1. Linux expand Tutoriel de commande pour les débutants (avec exemples)

  2. Linux oui Tutoriel de commande pour les débutants (avec exemples)

  3. Tutoriel de commande Linux tac pour les débutants (avec exemples)

  4. Tutoriel de commande pour les utilisateurs Linux pour les débutants (avec exemples)

  5. Tutoriel de commande Linux sum pour les débutants (avec exemples)

Tutoriel de commande Linux look pour les débutants (avec exemples)

Tutoriel de commande Linux lsattr pour les débutants (avec exemples)

Tutoriel de commande Linux tload pour les débutants (avec exemples)

Tutoriel de commande Linux znew pour les débutants (avec exemples)

Tutoriel de commande Linux zdump pour les débutants (avec exemples)

Tutoriel de commande Linux tr pour les débutants (avec exemples)