¿Se permite espacio entre #! y / bin / bash en shebang?


Respuestas:


48

Sí, esto está permitido.

El artículo de Wikipedia sobre el shebang incluye un correo electrónico de 1980 de Dennis Ritchie, cuando introdujo el soporte del kernel para el shebang (como parte de un paquete más amplio llamado directivas de intérprete ) en la Versión 8 Unix (énfasis mío):

El sistema se ha cambiado de modo que si un archivo que se está ejecutando comienza con los caracteres mágicos #!, el resto de la línea se entiende como el nombre de un intérprete para el archivo ejecutado. [...]

Para aprovechar esta maravillosa oportunidad, ponga

#! /bin/sh

en el margen izquierdo de la primera línea de sus scripts de shell. Los espacios en blanco después !están bien.

Entonces, los espacios después del shebang han existido durante bastante tiempo, y de hecho, el ejemplo de Dennis Ritchie los está usando.

Tenga en cuenta que las primeras versiones de Unix tenían un límite de 16 caracteres en esta línea de intérprete, por lo que no podría tener una cantidad arbitraria de espacios en blanco allí. Esta restricción ya no se aplica en los núcleos modernos.


38

Sí, se permiten espacios en blanco después del #!. Incluso hubo un pensamiento (erróneo) de que algunos sistemas podrían requerirlo, pero siempre ha sido opcional.

Para leer más, intente aquí

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.