2013-07-21 2 views
-1

나는 유닉스 환경의 논리에 대해서 궁금해했다. 나는 유닉스가 운영체제이지만 쉘이기도하다. 하위 집합으로는 Bourne, Bash 및 Korn 셸과 같은 특정 셸이 있습니다. 그리고이 셸은 인터프리터이며 스크립트를 해석 할 수있는 고유 한 기능을 가지고 있으며 ping, pwd 등과 같은 기능을 가지고 있습니다. 그래서 껍질 안에 껍질이 있습니까? 내가 말한 것이 모두 맞습니까?유닉스/쉘 스크립팅은 어떻게 작동합니까?

답변

1

유닉스 운영체제는 쉘이이 아닌 입니다.

쉘은 프로그램을 실행하고 데이터 스트림을 조작하여 컴퓨터와 쉽게 상호 작용할 수있게 해주는 프로그램입니다.

언급 한 '기능'은 프로그램이며 셸의 일부가 아닙니다.

원하는 경우 다른 쉘에서 쉘을 실행할 수 있습니다. 예를 들어, bash 세션에서 csh로 전환하려고합니다. csh을 실행하고 완료하면 exit을 bash 쉘로 리턴하십시오.

원한다면 bash 세션에서 bash의 다른 사본을 실행할 수 있습니다. 일부 환경 변수를 수정 한 후 돌아올 때 변경 사항을 실행 취소하려는 경우이 작업을 수행 할 수 있습니다.

이 모든 경우에 쉘에서 프로그램을 실행하고 종료 될 때까지 기다렸습니다. 만약 그 프로그램이 쉘이 되었다면, 그것은 특별한 것이 아닙니다.

+0

감사합니다. 그래서 모든 프로그램이 유닉스에 내장되어 있습니까? 각 쉘은 고유 한 언어 구문을 가지고 있지 않습니까? –

+0

쉘에는 공통된 몇 가지 기본 구문이 있습니다. 그렇지 않으면 모든 사람이 혼란 스러울 수 있습니다. 그러나 그들의 언어 기능과 구문은 다릅니다. 결국 기본적인 통역사입니다. 예를 들어'csh'는 C 스타일 구문을 사용합니다. – paddy

+0

+1 좋은 대답은 bash에서 csh를 실행하고 싶은 이유가 나를 넘어서 있습니다 :-) – paxdiablo

관련 문제