저는 다양한 명령줄 인터프리터를 조사해 왔으며 기본 Windows 인터프리터 cmd.exe
가위키피디아 페이지. Unix 계열 시스템의 거의 모든 명령줄 인터프리터는 쉘이라고 부르지만 cmd.exe
해당 문제에 대한 다른 인터프리터의 대부분은 그렇지 않습니다.
이에 대한 이유가 있습니까? 아니면 "쉘"은 Unix 계열 시스템에 속하는 인터프리터의 명명법입니까?
답변1
쉘은기본운영 체제에 대한 사용자 인터페이스. Windows에서 이 인터페이스는 GUI입니다. "파일 관리자"로 사용하고 explorer.exe
"하단 메뉴", "폴더 창"을 생성하고 파일 열기 프로세스를 제어합니다. 파일을 클릭하면 ShellExecute
기능이 호출됩니다.
따라서 Windows의 "shell"은 UI이고 "cmd"는 일부 레거시 또는 특수 명령에만 사용되었습니다. 수년 동안 Microsoft는 GUI가 모든 작업을 수행하는 가장 좋은 방법이라고 생각했습니다.
~ 2006년에 그들은 유닉스 쉘(bash, ksh, zsh)이 시스템 관리자들 사이에서 매우 인기가 있다는 것을 발견하고 이를 발명했습니다.파워셸: 특히 최신 Powershell ISE와 함께 사용하는 경우 매우 멋진 .net 기반 cmd 대체입니다. 그것은이라고껍데기많은 시스템 관리 작업에서 "일류 시민"이 되는 것이 주요 목적이기 때문입니다. 최신 Microsoft 서버 제품에는 cmdlet이 있으므로 MMC 없이 powershell에서 거의 모든 작업을 수행할 수 있습니다.
MS-DOS 시대에는 왜 "command.com"에 "Shell"이라는 단어를 사용하지 않았는지 모르겠습니다. CP/M에서 용어를 빌려 "명령 프로세서"라고 불렀을 수도 있습니다.
재미있는 점: DOS용으로 수명이 짧은 GUI 파일 관리자인 "DOS Shell"이 있었습니다. 6.22에서 단종되었으며 당시 대부분의 사람들이 Norton Commander를 사용했습니다.