런컴
RUNCOMRUNCOM은 CTSS 매크로 명령(스크립트) 프로세서입니다.[1]
역사
Louis Pouzin은 1963년경 CTSS를 위한 RUNCOM을 만들었습니다.[2]그는 1965년에 멀틱스 셸의 설계를 설명하는 논문을 작성했는데, 여기에는 RUNCOM에[3] 대한 간략한 설명과 5일 후에 제어 흐름, 조건부 분기 및 루프에 대한 명령을 추가한 RUNCOM의 설계를 설명하는 두 번째 논문이 포함됩니다.[4]
유닉스 계열 시스템의 맥락에서 rc라는 용어는 "run commands"라는 문구를 나타냅니다.명령에 대한 시작 정보가 들어 있는 모든 파일에 사용됩니다.
파일에 저장된 여러 명령어를 실행하는 기능이 있었는데, 이를 runcommands라고 부르고, 파일을 runcom이라고 부르기 시작했습니다.유닉스의 rc는 그 용법에서 나온 화석입니다.
멀틱스 엔지니어인 톰 반 블렉(Tom Van Vleck)은 확장 rc에 대해 다음과 같이 언급했습니다. "명령어 처리 셸을 일반 슬레이브 프로그램으로 설정하는 아이디어는 멀틱스 디자인에서 비롯되었으며, 일부 유닉스 구성 파일의 .rc' 접미사의 소스인 런컴(RUNCOM)이라는 루이 푸진(Louis Pouzin)의 CTSS에 대한 이전 프로그램에서 비롯되었습니다."[6]
이것은 또한 RC 쉘인 Tom Duff가 Bell Labs shell에서 나온 Plan 9의 이름의 기원이기도 합니다.셸의 주된 일이 명령어를 실행하는 것이기 때문에 이것은 "rc"라고 불립니다.
rc 파일은 프로그램의 실행 방법을 제어하기 때문에 rc는 "실행 제어"로 확장될 수도 있습니다.예를 들어 편집기 Vim은 .vimrc 파일의 내용을 찾아 읽어서 초기 구성을 결정합니다.Art of Unix Programming에서, Eric S. 레이먼드는 지속적으로 rc 파일을 "run-control" 파일로 언급합니다.
사용.
배경
RUNCOM은 UNIX 셸의 의미에서 셸이 아닙니다.사용자 유형이 명령어를 CTSS에 입력하면 UNIX-shell과 같은 프로그램이 아닌 슈퍼바이저(커널)로 이동합니다.사용자는 RUNCOM에 명령어를 입력할 수 없으며 디스크 파일을 처리합니다.CTSS 파일에는 이름과 두 번째 이름이 공백으로 구분되어 있습니다(예: FOO BCD).
RUNCOM 설명
매크로 명령이라고도 하는 RUNCOM 명령 체인(두 용어 모두 스크립트를 의미함)은 0개 이상의 행을 포함하는 RUNCOM 또는 BCD의 두 번째 이름을 가진 파일입니다.스크립트의 줄은 공백 줄, 주석, 일반 명령(슈퍼바이저의 명령 줄에 입력할 수 있는 종류) 또는 의사 명령(RUNCOM에만 내장된 명령) 체인입니다.
댓글은 다음 중 하나로 시작합니다.$
아니면*
선의 첫 글자로댓글 사용하기$
인쇄되어 있습니다( 포함).$
) RUNCOM이 RUNCOM을 실행할 때*
인쇄되지 않았습니다.주석에는 파라미터 대체가 발생하지 않습니다.
사용자가 RUNCOM을 호출할 때 RUNCOM에 대한 인수(파라미터)는 먼저 스크립트가 포함된 파일의 이름으로 시작해야 합니다.사용자가 인수 없이 RUNCOM을 호출하면 사용 방법에 대한 지침을 인쇄하고 중지하여 감독자(시스템)의 명령줄로 돌아갑니다.나머지 인수는 명령어 이름, 스크립트에서 인수로 사용할 값 또는 괄호를 포함한 문자열(NIL) 또는 (END)입니다.
스크립트에서 CHANE은 RUNCOM이 호출될 때 명령줄에서 사용된 인수에 이름을 부여합니다.CHANLE LALA FAA를 스크립트에 넣고 RUNCOM XYZZY 3을 호출하면 스크립트에 있는 LALA가 CHANLE 뒤에 오는 행에 사용될 때 3으로 대체되는 반면 FAFA는 RUNCOM이 지정하지 않고 호출되었기 때문에 FAFA로 유지됩니다.
RUNCOM에 대한 인수가 (NIL)인 경우 스크립트에서 CHINE에 대한 인수로 표시된 위치 매개 변수가 아무것도 아닌 것으로 확장됩니다. 예를 들어, RUNCOM A(NIL) B와 결합된 CHINE ALPA BETA GAMMA는 A로, GAMMA는 B로 대체되고 BETA는 스크립트에서 CHINE 다음 명령에서 제거됩니다.
RUNCOM 인수가 (END)인 경우 해당CHAIN
인수는 (NIL)로 처리되고 이후의 모든 인수도 (NIL)로 처리됩니다.
매개 변수:CHAIN
스크립트에서 명령어 이름으로 사용할 수 있습니다. 즉, 인수 앞에 먼저 올 수 있습니다.예를 들면 다음과 같습니다.RUNCOM SCRIPT LISTF
을 합하여CHAIN CMD
다음 행의 시작 부분에 CMD가 뒤따릅니다.CMD는 다음으로 대체됩니다.LISTF
(유닉스처럼) 디렉토리에 파일을 나열할 것입니다.ls
명령).
대체가 완료되면 RUNCOM은 명령을 다른 프로그램에서도 사용할 수 있는 SHAIN 라이브러리 서브루틴으로 보냅니다.[1]
참고 항목
참고문헌
- ^ a b Grisman, P.A., ed. (1969). The Compatible Time-Sharing System - A Programmer's Guide, 2nd Ed. Boston: The MIT Press. p. 525.
- ^ Pouzin, Louis (25 November 2000). "The Origin of the Shell". Multicians. Retrieved 31 July 2017.
- ^ Pouzin, Louis (April 2, 1965). The SHELL: A Global Tool for Calling and Chaining Procedures in the System (PDF) (Report). Massachusetts Project Institute of Technology Project MAC. MDN-4. Retrieved April 9, 2022.
- ^ Pouzin, Louis (April 7, 1965). RUNCOM - A Macro-Procedure Processor for the 636 System (PDF) (Report). Massachusetts Project Institute of Technology Project MAC. MDN-4. Retrieved April 9, 2022.
- ^ "In Unix, what do some obscurely named commands stand for?". IT Knowledge Base. Indiana University. Retrieved 2009-04-20.
- ^ "Unix and Multics". Retrieved 2009-04-20.