Você não pode saber definitivamente se um comando é interno ou externo apenas olhando para ele em um prompt. Aqui está o porquê:  
 O que são comandos internos e externos?    * 
 Comandos internos  estão embutidos no próprio conchas (como Bash ou Zsh). Eles não são programas separados e são executados diretamente dentro do processo do shell. Exemplos:`cd`,` eco`, `exit`. 
 * 
 comandos externos  são programas separados armazenados no sistema de arquivos (geralmente em diretórios como /bin, /usr /bin, etc.). O shell precisa localizar e executar esses arquivos. Exemplos:`ls`,` Cat`, `Grep`.   
 Por que você não pode dizer apenas olhando:   1. 
 sem distinção visual: Os conchas não diferenciam visualmente entre comandos internos e externos no prompt. Ambos parecem iguais quando você os digita.  
 2. 
 alias e mascaramento de função: Você pode criar aliases ou funções que mascaram comandos externos com o mesmo nome. Por exemplo, você pode ter um pseudônimo chamado `ls` que executa` ls -lrt`.   
 Como descobrir se um comando é interno ou externo:   1. 
 `type` comando: O método mais confiável é usar o comando `type`. Ele informa o tipo de comando e sua localização, se for externo. 
 `` `BASH 
 Tipo CD 
 Tipo ls 
 `` `  
 2. 
 `help` comando (para algumas conchas): Em algumas conchas (como Bash), você pode usar o comando `help`. Se for um comando interno, mostrará seu uso. Caso contrário, geralmente significa que é externo. 
 `` `BASH 
 CD de ajuda 
 AJUDA LS 
 `` `  
 3. 
 `qual" comando (para comandos externos): O comando `que` ajuda você a localizar o arquivo executável de um comando * externo *. Se não encontrar, pode ser um comando interno ou não existir. 
 `` `BASH 
 que ls 
 `` `   
 Em suma, não confie em pistas visuais. Use os comandos apropriados para determinar se um comando é interno ou externo.