Jaka historia kryje się za sugestią pliku poleceń?

12

Podczas czytania file(1)zauważyłem to na stronie podręcznika man (moje wyróżnienie):

Dodając lokalne definicje do / etc / magic, pamiętaj o zachowaniu tych słów kluczowych. Użytkownicy polegają na wiedzy, że wszystkie czytelne pliki w katalogu mają wydrukowane słowo „tekst”. Nie rób tak jak Berkeley i zmień „tekst poleceń powłoki” na „skrypt powłoki”.

Jaka jest historia tego zdania? Chyba Berkeleyodnosi się do, BSD (Berkeley software distribution)ale Google nie podał wystarczających informacji na ten temat.

Link do file(1) http://man7.org/linux/man-pages/man1/file.1.html

Niektóre kopanie wokół pokazuje, że to oświadczenie zostało dodane 27 lat temu link

Don't do as one computer vendor did \- change ``shell commands text''
to ``shell script''.

a później zmieniono na link bieżącej instrukcji

Don't do as Berkeley did \- change ``shell commands text''
czatować
źródło

Odpowiedzi:

6

Ludzie pisali skrypty (i ewentualnie programy C) do uruchamiania filena pliku, przechwytywali dane wyjściowe za pomocą $(file foobar)lub popen()i sprawdzali dopasowanie ciągów znaków, aby zobaczyć, czy dane wyjściowe z filezawartego (lub kończącego się na) słowa „tekst”. Następnie twórcy Berkeley Software Distribution (z University of California, Berkeley) postępowali zgodnie z opisem i spowodowali, że wszystkie skrypty i programy nie rozpoznawały plików skryptów powłoki jako plików tekstowych.

Scott
źródło
Kiedy to się stało? Jakieś referencje?
yegle
Było to prawdopodobnie pod koniec (bardzo późno) lat siedemdziesiątych lub wczesnych lat osiemdziesiątych. Nie mogę znaleźć referencji; Przekazuję swoją pamięć.
Scott
not to recognize shell script files as text files. skrypt powłoki może zawierać dane binarne :) patrz: Błąd wykrywania skryptów powłoki z osadzonymi danymi binarnymi , błędna magia: #! / bin / sh z osadzonymi danymi binarnymi zgłoszonymi jako „dane” , Poprawka
Evgeny Vereshchagin
@EvgenyVereshchagin: OK, to trochę pasuje do tematu - ale niewiele. A może masz rację?
Scott,