UNIX $ (달러) 프롬프트의 출처는 무엇입니까?


83

UNIX 프롬프트는 $기호를 사용 하여 입력이 예상됨을 나타냅니다.

이유가 있다면이 상징이 왜 선택되었는지 궁금했습니다. 달러는 조금 예상치 못한 것 같습니다. >기호는 내 의견에 더 많은 암시했을 것이다.


3
프로그래밍과 관련이 없지만 컴퓨터와 관련이 있기 때문에 슈퍼 유저에게는 더 좋습니다.
— Joey

나는 대답도 알고 싶다. SU에서 찾아 볼게요.
— Gabriel Hurley

24
유닉스 프롬프트가 아닌 Bourne 쉘 프롬프트입니다. 기본 csh 프롬프트는 %입니다.
— wfaulk

1
wfaulk, 나는 당신의 의견을 두 번 이상 찬성 할 수 있기를 바랍니다.
— Richie Marquez

18
€이 존재 아직하지 않았다 ...
— mouviciel

답변:


59

조금 살펴 보자.

  • 버전 8 유닉스 는 쉽습니다. 여전히 사용 가능한 매뉴얼 페이지가 있습니다. 받는 받기 쉬 매뉴얼 페이지 및 프롬프트를 검색합니다. 당신은 당신이 읽는 지점에 도착합니다 :

    PS1 기본 프롬프트 문자열, 기본적으로“$”.

    PS2 보조 프롬프트 문자열 (기본적으로 ">").

  • 이것이 처음인지 보자. 버전 7 Unix 매뉴얼 페이지는 계속 사용할 수 있으며 sh매뉴얼 페이지 는 버전 8과 동일한 프롬프트 설명을 제공합니다.

  • 버전 6은 어떻습니까? 버전 6 유닉스 는 추적하기 힘들지 않았습니다. 그러나 그 sh 사람이 페이지는 전혀 지시를 언급하지 않습니다. "시작하기"안내서 가 여기에 편리합니다. 그것은 언급한다 :

    귀하의 로그인 노력의 정점은 퍼센트 부호“%”입니다. 퍼센트 기호는 UNIX가 터미널에서 명령을 수락 할 준비가되었음을 나타냅니다.

아하! 따라서 버전 6에는 없었습니다. 버전 7이 처음이었습니다! 1979 년에 출시되었습니다.

행복? 퍼레이드에 비가 내리는 것을 싫어하지만하지 마십시오. :)

문제는 버전 6이 영감을주는 Unix라는 것입니다. 여기서 변형을 살펴보십시오 . 명령 프롬프트로서의 $ 기호가 버전 7에서 시작되지 않고 대신 이러한 변형 중 하나에서 시작된 다음 아이디어가 7에 통합되었을 수 있습니까?

이 시점에서 저는 6 살 때부터 운영 체제 문서를 찾는 데 지쳤습니다. 이것은 적어도 상당히 좁 힙니다. 버전 7은 $ 기호를 명령 프롬프트로 표시 한 최초의 Bell Labs 릴리스입니다. 우리가 확신해야 할 것은 버전 6 변형 중 어느 것도 그것을 도입하지 않았다는 것입니다. 이전 버전의 Unix에서 사용 된 Thompson 쉘 ( 프로그래머의 Workbench Unix에서 사용되는 Massey 쉘)을 대체하는 Bourne 쉘을 출시 한 릴리스이므로 버전 7에 이러한 변경 사항이 표시되는 것이 합리적입니다 .

마지막 한가지 생각 :
$ 쉘이나 스크립트에 힌트가되는 아이디어는 매력적이고 모든 의미가 있지만, 이것이 공식적으로 확인되는 것을 기대하지는 마십시오. 유닉스 개발은 기호가 어떻게 진화했는지 추적하는 것보다 인생에 훨씬 더 큰 관심을 가진 다소 큰 사람들이 공유했습니다. 그리고이 특별한 프로그래머 중 일부는 더 이상 우리 사이에 있지 않습니다.

아마도 "UNIX $ (달러) 프롬프트의 출처는 무엇입니까?"라는 질문에서 얻을 수있는 최선의 방법 일 것입니다. 최초의 유닉스 쉘을 소개하는 이름입니다.


4
버전 7은 Bourne 쉘이있는 최초의 Unix입니다. 버전 6에서는 Thompson 쉘을 대체했습니다. 따라서 이것은 쉘 프롬프트 사이를 나타내는 의미가 있습니다.
— wfaulk

1
예. 우리는 그것을 Bourne Shell에 거의 추적 할 수 있습니다. 저자는 의심 할 여지가 없다. 그러나 그는 다른 사람들과 마찬가지로 Bell Labs의 직원이었습니다.
— Dwarf


2
6 판과 그 전으로 유닉스는 전체 소스 코드를 포함하여 배포되었습니다. 워털루 대학교 (University of Waterloo)의 일부 지역 시스템 프로그래머는 지역 수정 (BSD가 시작된 곳)을하는 경향이있는 모든 대학에서 "쉘"프롬프트가 달팽이처럼 보이고 %를 @로 바꿨다. . 그리고 당신이 말했듯이, 많은 변형이 있었고 v7에서 다시 조합되었을 때, 변경의 기원이 이미 퍼지되었습니다.
— Michael Dillon

3
Bourne에 대한 영감을 얻을 수있는 소스 : 1978 년 의 MTS FORTRAN-IV / WATFIV 매뉴얼 은 펀치 카드 입력에 대해 설명합니다.
— cxw

9

원래 Bourne 쉘 프롬프트는 달팽이 쉘 "@"입니다. 유닉스가 상용으로 판매되기 전인 유닉스 6 판에서 이것을 기억합니다. Robert가 제안한 것처럼 $ hell로 전환하면 UNIX의 상용화와 관련이있을 수 있습니다.


3
Bourne 쉘은 버전 7까지 존재하지 않았다
— wfaulk

2
글쎄, 우리는 그것을 "쉘 (shell)"이라고 불렀습니다. 그래서 나는 누가 그것을 썼는지 알 수 없습니다. 달팽이 껍질과 같은 나선 모양이나 기호로 배열 된 모든 쉘 명령이있는 포스터를 본 것을 기억합니다. 어쩌면 O'Reilly에서 왔을 수도 있지만 확실하지 않습니다.
— Michael Dillon

8

실제로 Bourne, Bash 또는 Korn 셸을 사용하는 일반 사용자 계정에 대한 Linux의 표준 명령 줄 프롬프트는 달러 기호 ($)이고 루트 프롬프트는 해시 마크 (#)입니다. 반대로 전통적인 C 쉘 프롬프트는 퍼센트 부호 (%)입니다.

내가 추측한다면, $는 $ hell이라는 단어를 연상시킵니다.


4
그는 사람들이 추측 할 수있는 것이 아니라 실제 기원을 요구하고 있습니다.
— davr

6
으르렁 거리지 마십시오. 여기에 게시 된 다른 답변으로 판단하면 아무도 확실히 알 수없는 것으로 보입니다.
— Robert Harvey

1
루트 프롬프트 #는 주석 문자와 일치하도록 선택되어 실수로 위험한 명령을 붙여 넣을 가능성을 줄입니다. 나는 그들이 날에 다시 붙여 넣는 방식에 많은 것이 있다고 생각하지 않습니다.
— Sam Watkins

그것이 가치있는 것에 대해, 이것은 내가 어느 것을 기억할 수 없기 때문에 내가 찾고있는 대답이었습니다.
— John Leidegren


2

주의 : 이것은 사실이 아닐 수도 있습니다.

나는 $심리적으로 상기 시키는 느낌 이있다.

당시에는 디지털 프롬프트가 없었고 종이 "teletype"( tty) 만 있었음을 기억해야합니다 . 그리고 아마도 달러는 "이 전화선을 유지하면서 종이와 돈을 낭비하고 있습니다. 이미 몇 가지 명령을 입력하십시오!"라고 말했을 것입니다.

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