Casi todos los scripts de shell de Linux comienzan con una línea que comienza con "#!". Esto se conoce como el "shebang". Aquí está todo lo que necesita saber al respecto.

Es posible que haya visto una línea extraña que comienza con "#!" al comienzo de los scripts de Linux y me preguntaba qué era eso. Eso se llama la "línea shebang" y le permite a Linux decir qué intérprete usar. Así es como funciona.

¿Qué es la línea Shebang?

Un sistema Linux tiene muchos scripts que automatizan varias tareas de limpieza. Los usuarios y administradores también escriben sus propios scripts.

A pesar del auge de los lenguajes de secuencias de comandos populares como Ruby o Python, las distribuciones de Linux también suelen venir equipadas con varios shells. Bash es un estándar de facto en las principales distribuciones, pero hay muchos shells disponibles.

Hay Zsh, así como C shell, Korn Shell y tcsh. Y Pescado. Y luego la buena y vieja concha de Bourne. Excepto que en realidad es Bash vinculado a sh.

Entonces, no solo hay diferentes lenguajes de secuencias de comandos, hay diferentes shells. Estos shells tienen diferentes sintaxis y comandos entre sí. ¿Cómo le dices a Linux qué intérprete usar?

instagram viewer

Esto es lo que hace la línea shebang. Es una secuencia de caracteres que inicia guiones interpretados. Toma su nombre de dos términos del argot para "#" y "!" caracteres. El primero se llama "hash". Puede que lo sepas por el término "hashtag".

El "!" también se conoce como explosión. La combinación de los dos es un "shebang", un juego de palabras con la frase "the whole shebang".

Cómo determina Linux qué intérprete usar

Puede notar que el "#"personaje es también un comentario en muchos idiomas. ¿Cómo evita el sistema los conflictos? Eso es fácil. La mayoría de los intérpretes de idiomas simplemente ignoran "#" caracteres si están en la primera línea.

En su lugar, el kernel mirará la línea shebang y pasará el script al intérprete apropiado.

Establecer la línea Shebang en sus guiones

Decirle al kernel qué intérprete ejecutar en sus scripts es simple. Sólo hay que poner la ruta absoluta del intérprete que desea ejecutar en la línea shebang, seguido de cualquier opción.

Por ejemplo, para ejecutar un script Bash:

#!/bin/bash

Dale tu guion ejecutar permisos usando chmod:

chmod +x secuencia de comandos.sh

Ahora podrá ejecutar su secuencia de comandos desde la línea de comandos.

Ahora sabes sobre la línea Shebang

Ahora ya sabe cómo funciona la línea shebang para ejecutar scripts en Linux. El "#!Los caracteres simplemente le dicen al núcleo qué intérprete ejecutar. Uno que viene con la mayoría de los sistemas Linux es Bash.

A pesar de la popularidad de los lenguajes de secuencias de comandos como Python, Bash sigue siendo útil para escribir secuencias de comandos para automatizar las tareas de administración de Linux. Es fácil escribir y ejecutar scripts Bash en Linux.