Pendant que je lis, file(1)
j'ai remarqué ceci dans la page de manuel (c'est moi qui souligne):
Lorsque vous ajoutez des définitions locales à / etc / magic, veillez à conserver ces mots clés. Les utilisateurs doivent savoir que tous les fichiers lisibles d'un répertoire ont le mot «texte» imprimé. Ne faites pas comme Berkeley et changez le «texte des commandes shell» en «script shell».
Quelle est l'histoire derrière cette phrase? Je suppose que cela Berkeley
fait référence, BSD (Berkeley software distribution)
mais Google n'a pas donné suffisamment d'informations à ce sujet.
Lien vers file(1)
http://man7.org/linux/man-pages/man1/file.1.html
Quelques fouilles montrent que cette déclaration a été ajoutée il y a 27 ans lien
Don't do as one computer vendor did \- change ``shell commands text''
to ``shell script''.
et changé plus tard en lien de déclaration actuel
Don't do as Berkeley did \- change ``shell commands text''
la source
not to recognize shell script files as text files
. le script shell peut contenir des données binaires :) voir: Échec de la détection des scripts shell avec des données binaires incorporées , magie du buggy: #! / bin / sh avec des données binaires incorporées signalées comme 'données' , CorrectionApparemment, cela s'est produit entre 4.2 et 4.3BSD - comparez http://minnie.tuhs.org/cgi-bin/utree.pl?file=4.2BSD/usr/src/usr.bin/file.c et http: // minnie.tuhs.org/cgi-bin/utree.pl?file=4.3BSD/usr/src/usr.bin/file.c
la source