터미널, 콘솔, 셸, 명령줄의 차이점은 무엇입니까?

터미널, 콘솔, 셸, 명령줄의 차이점은 무엇입니까?

터미널, 콘솔, 셸, 명령줄의 차이점은 무엇입니까?

답변1

짧은 답변:

  • 단말기= 텍스트 입출력 환경
  • 콘솔= 물리적 터미널
  • 껍데기= 명령줄 해석기

긴 답변:

콘솔과 터미널은 밀접하게 연관되어 있습니다. 원래는 컴퓨터와 상호작용할 수 있는 장비를 의미했습니다. 유닉스 초기에는텔레프린터- 타자기와 유사한 스타일의 장치로, 텔레타이프라이터(Teletypewriter) 또는 줄여서 "tty"라고도 합니다. '터미널'이라는 이름은 전자적 관점에서, '콘솔'이라는 이름은 가구 관점에서 유래했습니다. 유닉스 역사 초기에 전자 키보드와 디스플레이가 터미널의 표준이 되었습니다.

단말기

유닉스 용어로 말하면,단말기특별한 종류이다장치 파일이는 여러 가지 추가 명령을 구현합니다(ioctl) 읽기 및 쓰기를 넘어서는 것입니다. 일부 터미널은 하드웨어 장치를 대신하여 커널에 의해 제공됩니다. 예를 들어 키보드에서 입력이 들어오고 출력이 텍스트 모드 화면으로 이동하거나 입력 및 출력이 직렬 회선을 통해 전송됩니다. 의사 터미널 또는 의사 tty라고도 하는 다른 터미널은 얇은 커널 계층을 통해 다음과 같은 프로그램에 의해 제공됩니다.터미널 에뮬레이터. 일부 유형의 터미널 에뮬레이터는 다음과 같습니다.

  • 에서 실행되는 GUI 애플리케이션X 윈도우 시스템:Xterm, 그놈 터미널, Konsole, 터미네이터 등
  • 화면그리고티먹스, 프로그램과 다른 터미널 사이에 격리 계층을 제공합니다.
  • SSH, 한 컴퓨터의 터미널을 다른 컴퓨터의 프로그램과 연결합니다.
  • 예상하다, 터미널 상호 작용 스크립팅용

단어단말기일반적으로 키보드와 디스플레이를 사용하여 컴퓨터와 상호 작용하는 장치의 보다 전통적인 의미를 가질 수도 있습니다. 예를 들어 X 터미널은 일종의씬 클라이언트, 키보드, 디스플레이, 마우스 및 때때로 기타 인간 상호 작용 주변 장치를 구동하는 것이 유일한 목적이며 실제 응용 프로그램은 더 강력한 다른 컴퓨터에서 실행되는 특수 목적 컴퓨터입니다.

콘솔

콘솔일반적으로 어떤 정의에 따르면 기계에 직접 연결된 기본 터미널인 물리적 의미의 터미널입니다. 콘솔은 운영 체제에 (커널 구현) 터미널로 나타납니다. Linux 및 FreeBSD와 같은 일부 시스템에서는 콘솔이 여러 터미널(tty)로 나타납니다(이 터미널 간에 특수 키 조합을 전환합니다). 문제를 혼동하기 위해 각 특정 터미널에 지정된 이름은 "콘솔", "가상 콘솔", "가상 터미널" 및 기타 변형일 수 있습니다.

또한보십시오가상 터미널이 "가상"인 이유는 무엇이며 "실제" 터미널은 무엇이며, 왜, 어디에 있습니까?.

명령줄 [인터페이스]

명령줄사용자가 명령(문자열로 표현됨 - 일반적으로 명령 이름 뒤에 일부 매개변수가 옴)을 입력하고 키를 눌러 Return해당 명령을 실행하는 인터페이스입니다.

껍데기

껍데기사용자가 로그인할 때 보게 되는 기본 인터페이스로, 주요 목적은 다른 프로그램을 시작하는 것입니다. (원래 비유가 쉘이 사용자의 홈 환경이라는 것인지, 아니면 쉘이 다른 프로그램이 실행되는 환경이라는 것인지는 모르겠습니다.)

유닉스 서클에서는껍데기을 의미하는 것으로 전문화되었습니다.명령줄 셸, 시작하려는 응용 프로그램의 이름을 입력하고 응용 프로그램이 작동해야 하는 파일 또는 기타 개체의 이름을 입력하고 Enter 키를 누르는 것을 중심으로 합니다. 다른 유형의 환경(최근 Gnome Shell을 제외하고)에서는 일반적으로 “shell”이라는 단어를 사용하지 않습니다. 예를 들어, 창문 시스템에는 “창 관리자" 그리고 "데스크탑 환경", "쉘"이 아닙니다.

다양한 유닉스 쉘이 있습니다. 우분투의 기본 쉘은세게 때리다(대부분의 다른 Linux 배포판과 마찬가지로) 인기 있는 대안은 다음과 같습니다.zsh(강력함과 사용자 정의 가능성을 강조함) 및물고기(단순함을 강조함)

명령줄 셸에는 명령을 결합하는 흐름 제어 구성이 포함되어 있습니다. 대화형 프롬프트에서 명령을 입력하는 것 외에도 사용자는 스크립트를 작성할 수 있습니다. 가장 일반적인 쉘은 다음을 기반으로 하는 공통 구문을 갖습니다.Bourne_shell. "를 논의할 때쉘 프로그래밍”, 쉘은 거의 항상 Bourne 스타일 쉘로 암시됩니다. 스크립팅에 자주 사용되지만 고급 대화형 기능이 부족한 일부 셸은 다음과 같습니다.Korn 쉘(ksh)그리고 많은금연 건강 증진 협회변형. 거의 모든 Unix 계열 시스템에는 /bin/sh일반적으로 ash, ksh 또는 bash로 Bourne 스타일 쉘이 설치되어 있습니다. /bin/sh우분투 에서는대시, ash 변형(bash보다 더 빠르고 메모리를 덜 사용하기 때문에 선택됨).

유닉스 시스템 관리에서 사용자의껍데기로그인할 때 호출되는 프로그램입니다. 일반 사용자 계정에는 명령줄 셸이 있지만 액세스가 제한된 사용자에게는제한된 껍질또는 다른 특정 명령(예: 파일 전송 전용 계정의 경우).


터미널과 셸 사이의 작업 분업은 완전히 명확하지 않습니다. 주요 임무는 다음과 같습니다.

  • 입력: 터미널은 키를 제어 시퀀스로 변환합니다(예: Left\e[D). 쉘은 제어 시퀀스를 명령(예: \e[Dbackward-char)으로 변환합니다.
  • 라인 편집, 입력 내역 및 완성 기능은 쉘에서 제공됩니다.
    • 터미널은 대신 자체 라인 에디션, 기록 및 완성 기능을 제공할 수 있으며 실행할 준비가 되었을 때만 셸에 라인을 보낼 수 있습니다. 이런 방식으로 작동하는 유일한 공통 터미널은 M-x shellEmacs에 있습니다.
  • 출력: 쉘은 "display foo", "전경색을 녹색으로 전환", "커서를 다음 줄로 이동" 등과 같은 명령을 내보냅니다. 터미널은 이러한 명령에 따라 작동합니다.
  • 프롬프트는 순전히 쉘 개념입니다.
  • 쉘은 자신이 실행하는 명령의 출력을 결코 볼 수 없습니다(리디렉션되지 않는 한). 출력 기록(스크롤백)은 순전히 터미널 개념입니다.
  • 애플리케이션 간 복사-붙여넣기는 터미널에서 제공됩니다(일반적으로 마우스 또는 Ctrl+ Shift+ V또는 Shift+ 와 같은 키 시퀀스 사용 Insert). 쉘에는 자체 내부 복사-붙여넣기 메커니즘도 있을 수 있습니다(예: Meta+ WCtrl+ Y).
  • 작업 제어(백그라운드에서 프로그램 시작 및 관리)는 대부분 셸에서 수행됩니다. 그러나 Ctrl+ 와 같은 키 조합을 처리하여 C포그라운드 작업을 종료하고 Ctrl+ Z를 일시 중단하는 것은 터미널입니다 .

재활용 출처유닉스 및 리눅스

답변2

시각적 표현.

단말기

앉아서 상사처럼 일할 수 있는 것.

단말기

콘솔

여러 가지 작업을 수행하는 하드웨어입니다.

콘솔

콘솔의 또 다른 예로는 Super Nintendo(Actraiser를 플레이할 수 있는 곳)와 같은 비디오 게임 콘솔이 있습니다.

껍데기

기본적으로 명령을 실행하기 위한 애플리케이션입니다.

껍데기껍데기

명령줄 [인터페이스]

기본적으로 명령을 입력하는 모든 것.

CLICLI

답변3

로부터리눅스 정보 프로젝트:

단말기: 기술적으로 터미널 에뮬레이터라고도 하는 터미널 창은 콘솔을 에뮬레이트하는 그래픽 사용자 인터페이스(GUI)의 텍스트 전용 창입니다.

우리가 말하는 GUI 응용 프로그램에서는 사용자 콘솔에 액세스할 수 있습니다.

콘솔: 컴퓨터의 컨트롤이 포함된 계기판

껍데기:쉘은 Linux 및 기타 Unix 계열 운영 체제에 대한 전통적인 텍스트 전용 사용자 인터페이스를 제공하는 프로그램입니다.

명령줄: 명령줄은 사용자가 명령과 데이터를 입력하는 컴퓨터 모니터(일반적으로 CRT 또는 LCD 패널)의 전체 텍스트 표시 모드에서 명령 프롬프트 오른쪽에 있는 공간입니다.

답변4

그만큼껍데기프로그램이다프로세스명령과보고Linux의 Bash와 같은 출력.

단말기을 실행하는 프로그램이다껍데기. 과거에는물리적 장치(터미널이 키보드가 있는 모니터가 되기 전에는텔레타이프) 그리고 그 개념은 그놈 터미널과 같은 소프트웨어로 옮겨졌습니다.

그래서 그놈 터미널을 열면 다음과 같은 검은색 창이 나타납니다.껍데기명령을 실행할 수 있도록 나타납니다.

콘솔특별한 종류의 터미널. 그것은 또한물리적 장치. 예를 들어 Linux에서는가상 콘솔Ctrl, ++ AltF1의 조합으로 액세스할 수 있습니다 F7.

콘솔때로는 키보드와 모니터를 의미하기도 합니다.육체적으로이 컴퓨터에 연결되어 있습니다.

관련 정보