Presque tous les scripts shell Linux commencent par une ligne commençant par "#!". C'est ce qu'on appelle le "shebang". Voici tout ce que vous devez savoir à ce sujet.

Vous avez peut-être vu une ligne bizarre commençant par "#!" au début des scripts Linux et je me demandais ce que c'était. C'est ce qu'on appelle la "ligne shebang" et cela permet à Linux de dire quel interpréteur utiliser. Voici comment cela fonctionne.

Qu'est-ce que la ligne Shebang?

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

Malgré l'essor des langages de script populaires comme Ruby ou Python, les distributions Linux sont également généralement équipées de plusieurs shells. Bash est un standard de facto sur les distributions grand public, mais de nombreux shells sont disponibles.

Il y a Zsh, ainsi que C shell, Korn Shell et tcsh. Et Poisson. Et puis le bon vieux Bourne shell. Sauf que c'est en fait Bash lié symboliquement à sh.

Ainsi, non seulement il existe différents langages de script, mais il existe également différents shells. Ces shells ont des syntaxes et des commandes différentes les unes des autres. Comment indiquez-vous à Linux quel interpréteur utiliser?

C'est ce que fait la ligne shebang. C'est une séquence de caractères qui lance des scripts interprétés. Il tire son nom de deux termes d'argot pour le "#" et "!" personnages. Le premier est appelé "hachage". Vous le connaissez peut-être grâce au terme "hashtag".

Le "!" est également connu sous le nom de bang. La combinaison des deux est un "shebang", un jeu sur l'expression, "tout le shebang".

Comment Linux détermine quel interpréteur utiliser

Vous remarquerez peut-être que le "#" Le caractère est aussi un commentaire dans de nombreuses langues. Comment le système évite-t-il les conflits? C'est facile. La plupart des interprètes linguistiques ignorent simplement "#" caractères s'ils sont sur la première ligne.

Le noyau regardera à la place la ligne shebang et passera le script à l'interpréteur approprié.

Définir la ligne Shebang dans vos scripts

Dire au noyau quel interpréteur exécuter dans vos scripts est simple. Il suffit de mettre le chemin d'accès absolu de l'interprète que vous souhaitez exécuter dans la ligne shebang, suivi de toutes les options.

Par exemple, pour exécuter un script Bash :

#!/bin/bas

Donnez votre scénario exécuter les autorisations en utilisant chmod:

chmod +x script.sh

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

Maintenant, vous connaissez la ligne Shebang

Vous savez maintenant comment fonctionne la ligne shebang pour exécuter des scripts sous Linux. Le "#!" Les caractères indiquent simplement au noyau quel interpréteur exécuter. Un qui vient avec la plupart des systèmes Linux est Bash.

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