Enquanto estou lendo file(1)
, notei isso na página de manual (ênfase minha):
Ao adicionar definições locais ao / etc / magic, preserve essas palavras-chave. Os usuários dependem de saber que todos os arquivos legíveis em um diretório têm a palavra "texto" impressa. Não faça o que Berkeley fez e altere "shell command text" para "shell script".
Qual é a história por trás dessa frase? Eu acho que Berkeley
se refere, BSD (Berkeley software distribution)
mas o Google não deu informações suficientes sobre isso.
Link para file(1)
http://man7.org/linux/man-pages/man1/file.1.html
Algumas pesquisas mostram que esta declaração foi adicionada há 27 anos link
Don't do as one computer vendor did \- change ``shell commands text''
to ``shell script''.
e posteriormente alterado para o link de declaração atual
Don't do as Berkeley did \- change ``shell commands text''
fonte
not to recognize shell script files as text files
. shell script pode conter dados binários :) ver: detecção de falha do shell scripts com dados binários incorporados , ! magia Buggy: #! / bin / sh com dados binários incorporados relatado como 'dados' , FixAparentemente, isso aconteceu entre 4.2 e 4.3BSD - compare http://minnie.tuhs.org/cgi-bin/utree.pl?file=4.2BSD/usr/src/usr.bin/file.c e http: // minnie.tuhs.org/cgi-bin/utree.pl?file=4.3BSD/usr/src/usr.bin/file.c
fonte