Vous avez peut-être déjà vu une ligne bizarre commençant par un « # !« au début des scripts Linux et je me suis demandé ce que c’était. C’est ce qu’on appelle la « ligne shebang », qui permet à Linux d’indiquer l’interpréteur à utiliser. Voici comment cela fonctionne.


Qu’est-ce que la ligne Shebang ?

Un système Linux comporte de nombreux scripts qui automatisent diverses tâches ménagères. Les utilisateurs et les administrateurs écrivent également leurs propres scripts.

Malgré la montée en puissance de langages de script populaires tels que Ruby ou Python, les distributions Linux sont généralement équipées de plusieurs interpréteurs de commandes. Bash est un standard de facto sur les distributions courantes, mais il existe de nombreux interpréteurs de commandes disponibles.

Il y a Zsh, ainsi que C shell, Korn Shell, et tcsh. Et Fish. Et puis le bon vieux Bourne shell. Sauf qu’il s’agit en fait de Bash lié par un lien symbolique à sh.

Il existe donc non seulement différents langages de script, mais aussi différents interpréteurs de commandes. Ces interpréteurs ont des syntaxes et des commandes différentes les unes des autres. Comment dire à Linux quel interprète utiliser ?

Lire  Revue du Honor Magic5 Pro : Un incroyable smartphone phare

C’est ce que fait la ligne shebang. Il s’agit d’une séquence de caractères qui démarre les scripts interprétés. Elle tire son nom de deux termes d’argot désignant la ligne « # » et « !« . Le premier est appelé « hash ». Vous le connaissez peut-être par le terme « hashtag ».

Le  » ! » est également appelé « bang ». La combinaison des deux est un « shebang », un jeu de mots sur l’expression « the whole shebang ».

Comment Linux détermine quel interprète utiliser

Vous pouvez remarquer que le symbole « #Le caractère  » est également un commentaire dans de nombreuses langues. Comment le système évite-t-il les conflits ? C’est très simple. La plupart des interprètes de langues ignorent simplement le caractère « # » s’ils sont sur la première ligne.

Le noyau regarde plutôt la ligne shebang et transmet le script à l’interpréteur approprié.

Lire  Le clavier devient fou et tape tout seul ? 6 façons de le réparer sous Windows

Définir la ligne Shebang dans vos scripts

Ligne Shebang dans un Bash court

Indiquer au noyau quel interpréteur exécuter dans vos scripts est simple. Il suffit de mettre le nom de chemin absolu de l’interpréteur que vous voulez exécuter dans la ligne shebang, suivi de toutes les options.

Par exemple, pour exécuter un script Bash :

 #!/bin/bash 

Donnez à votre script les droits d’exécution en utilisant chmod :

 chmod +x script.sh 

Vous pouvez maintenant exécuter votre script à partir de la ligne de commande.

Vous connaissez maintenant la ligne Shebang

Vous savez maintenant comment fonctionne la ligne shebang pour exécuter des scripts sous Linux. La ligne « # !Les caractères  » indiquent simplement au noyau l’interpréteur à exécuter. L’interpréteur fourni avec la plupart des systèmes Linux est Bash.

Malgré la popularité de langages de script comme Python, Bash reste utile pour écrire des scripts afin d’automatiser les tâches d’administration de Linux. Il est facile d’écrire et d’exécuter des scripts Bash sous Linux.