커맨드 파일의 제안에 대한 이야기는 무엇입니까?


12

내가 읽는 동안 file(1)맨 페이지 (강조 광산)에서 이것을 발견했습니다.

/ etc / magic에 로컬 정의를 추가 할 때이 키워드를 유지하십시오. 사용자는 디렉토리에서 읽을 수있는 모든 파일에 "텍스트"라는 단어가 인쇄되어 있다는 사실을 알고 있습니다. 버클리처럼하지 말고“쉘 명령 텍스트”를“쉘 스크립트”로 변경하십시오.

이 문장 뒤에 숨겨진 이야기는 무엇입니까? 나는 추측 Berkeley을 의미 BSD (Berkeley software distribution)하지만 구글은 이에 대한 충분한 정보를 제공하지 않았다.

http://man7.org/linux/man-pages/man1/file.1.html에 연결file(1)

이 문장 27 년전 추가되었음을 보여 주위 뒷조사 링크

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

나중에 현재 문장 링크로 변경

Don't do as Berkeley did \- change ``shell commands text''

답변:


6

사람들은 file파일에서 실행할 스크립트 (및 C 프로그램)를 작성 하여 $(file foobar)또는로 출력을 캡처하고 popen()문자열 일치 확인을 수행하여 file"text"라는 단어 의 출력이 포함되어 있는지 (또는 끝났 는지) 확인했습니다 . 그런 다음 Berkeley Software Distribution (버클리 캘리포니아 대학)의 개발자가 설명한대로 모든 스크립트와 프로그램이 쉘 스크립트 파일을 텍스트 파일로 인식 하지 못하게 합니다.


언제 이런 일이 있었습니까? 어떤 참조?
yegle

1970 년대 후반 (매우 늦음) 또는 1980 년대 초반 일 수 있습니다. 참조를 찾을 수 없습니다. 메모리를 중계하고 있습니다.
Scott

not to recognize shell script files as text files. 쉘 스크립트는 이진 데이터를 포함 할 수 있습니다 :) 참조 : 이진 데이터가 포함 된 쉘 스크립트 감지 실패 , 버그가있는 마법 : 'data'로보고 된 이진 데이터가있는 #! / bin / sh , 수정
Evgeny Vereshchagin

@EvgenyVereshchagin : 좋습니다. 주제와 관련이 있지만 그다지 중요하지 않습니다. 아니면 당신은 요점을하고 있습니까?
Scott

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.