web-dev-qa-db-fra.com

Pourquoi n'avons-nous pas de nombres magiques pour les scripts Shell?

Les systèmes Ubuntu et Unix utilisent généralement nombres magiques pour spécifier le type de fichier, de sorte que, par exemple, VLC ouvrira un fichier .mp4 même si l’extension est supprimée du nom du fichier. Cependant, dans les scripts, le Shebang a exactement le même objectif.

Pourquoi n'avons-nous pas de nombres magiques individuels pour bash, Perl, sed, awk,… également?

4
dessert

Tous les scripts tels que bash, Perl ou sed utilisent le format ASCII text tandis que mp4 est lu en tant que binaire. Avoir un en-tête de fichier différent au niveau binaire et dépendre de la langue pendant que le contenu reste un texte n'a pas de sens car cela signifie avoir un logiciel spécifique pour ouvrir chaque type de fichier. Avoir une simple déclaration dans le fichier suffit et garantit que le script peut être ouvert dans n'importe quel éditeur de texte.

3
ob2