일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- carla
- ssh-keygen
- WebCam
- awk
- 자택근무
- 사회적거리두기
- tldr
- linux go new project
- sudo
- MAN
- 리눅스 멀티미디어
- Go
- UNIX
- 명령어
- 파이프 와이어
- CODE128
- ssh-copy-id
- grep
- barcode
- 예제
- 리눅스
- go multifile manage
- go new project
- 유닉스
- 자율주행
- linux
- go make new project
- TEE
- html5
- 코로나바이러스
- Today
- Total
힘내라 일처리
.rc 에서 rc의 의미 알아보기 ( .bashrc / init.rc / ... ) 본문
개요
리눅스를 이용해서 개발을 하다 보면 *.rc
키워드의 파일들을 자주 만나볼 수 있는데
개발을 하다 보면 그냥 그런가 보다 하고 넘어가게 되는데, rc는 뭐의 약자일까 궁금했습니다.
결론
rc
는 Run Commands
의 약자입니다. 정확히는 runcom
의 약자라 봐도 됩니다.
또는 Run Control
의 약자이기도 합니다.
다짜고짜 결론을 정리하는 이유는 이게 생각보다 재미있는 역사를 지니고 있어서 그렇습니다.
그래서 이 아래는 runcom
의 역사? 를 정리하고자 합니다.
RUNCOM에 대해서
RUNCOM
은 초기 운영 체제인 CTSS (범용 시분할 시스템)
의 스크립트 실행기입니다. 요즘 리눅스로 따지자면 쉘 스크립트랑 유사하지만, 당시의 CTSS
는 지금의 쉘 인터페이스와는 사용법이 달랐고 그 안의 다양한 명령어들을 한 번에 자동으로 실행하기 위한 매크로 스크립트이었던 것 같습니다.
그래서 당시 RUNCOM 스크립트에는 조건 분기나 반복문과 같은 흐름 제어에 대한 기능이 있어 거의 프로그래밍 언어 정도로 이용이 가능하지 않았나 싶습니다.
그리고 이후에 나온 unix
운영체제인 Plan 9 from Bell Labs
의 쉘의 이름이 rc
이었습니다.
지금 나오는 *.sh
는 쉘 스크립트이기 때문에 이름을 가졌듯이 *.rc
파일들도 이러한 역사를 거치면서 나타나게 된 것이 아닌가 싶습니다.
Run Control에 대해서
다만 몇몇 *rc
파일들은 명령어를 실행하지 않고 그 명령어의 설정 등을 다루는 것들이 많습니다. .vimrc
.bashrc
같은 것들이요.
이러한 것들은 언제부터 이렇게 부르기 시작했는지의 오랜 역사는 모르지만, Art of Unix Programming (Eric S. Raymond)
도서에서는 이러한 rc
파일들을 실행 제어 파일이라고 언급되는 것을 알 수 있다고 합니다.
여담
Plan 9 from Bell Labs
운영체제는 다음과 같은 귀여운 마스코트가 있는데 이 마스코드를 그린 화가는 go lang
의 마스코트를 그린 르네 프렌치입니다.
'알아보기' 카테고리의 다른 글
pdf 문서 번역하는 법 알아보기 (0) | 2022.08.14 |
---|---|
의미가 쉽사리 짐작 가지 않는 unix / linux 명령어들의 의미 알아보기 (0) | 2022.07.22 |
Go 언어 프로젝트 생성하는 법 알아보기 (리눅스) (0) | 2022.07.09 |
C++ Pimpl 알아보기 (0) | 2022.07.01 |
eMMC vs UFS 둘중 어느게 좋은지 알아보기 (0) | 2022.07.01 |