Por que o interpretador de linha de comando cmd.exe não é chamado de shell? [fechadas]

0

Estive pesquisando diferentes interpretadores de linha de comando e notei que o intérprete padrão do Windows cmd.exe não é chamado de shell no página da Wikipédia . Praticamente todos os intérpretes de linha de comando de sistemas do tipo Unix são chamados de shells, mas não de cmd.exe ou da maioria dos outros intérpretes.

Existe uma razão para isso ou é "shell" apenas a nomenclatura para intérpretes pertencentes a sistemas do tipo Unix?

    
por Darien Springer 28.09.2017 / 02:41

1 resposta

2

Shell é a interface do usuário main para o sistema operacional. No Windows, essa interface é GUI. Ele usa explorer.exe como "gerenciador de arquivos", cria "menu inferior", "janela da pasta" e controla o processo de abertura de arquivos: quando você clica em um arquivo, ele chama ShellExecute function.

Portanto, "shell" no Windows é interface do usuário e "cmd" era apenas para alguns comandos legados ou especiais. Por muitos anos a Microsoft pensou que a GUI é a melhor maneira de fazer qualquer coisa.

Ele ~ 2006 eles descobriram que shells unix (bash, ksh, zsh) são muito populares entre os administradores, então eles inventaram PowerShell : substituição cmd baseada em .net que é muito legal especialmente se usada com o mais recente Powershell ISE. É chamado shell porque seu objetivo principal é tornar-se "cidadão de primeira classe" para muitas tarefas sys-admin. Qualquer produto moderno de servidor da Microsoft possui cmdlets para que você possa fazer quase tudo a partir do PowerShell (com o MMC).

Eu não sei porque eles não usaram a palavra "Shell" para "command.com" na era do MS-DOS. Pode ser que eles pegaram a terminologia do CP / M e a chamaram de "processador de comando".

Engraçado: havia um gerenciador de arquivos GUI de curta duração "DOS Shell" para DOS. Ele foi descontinuado em 6.22 e a maioria das pessoas usava o Norton Commander naquela época.

    
por 28.09.2017 / 03:06