os builtins são apenas parte do bash. Você pode descobrir se um comando está embutido usando type
. Por exemplo:
$ type export cd source alias
export is a shell builtin
cd is a shell builtin
source is a shell builtin
alias is a shell builtin
Muitos comandos embutidos são incorporados porque não podem funcionar de outra maneira. cd
e source
são exemplos.
Outros builtins são construídos apenas para eficiência. test
(AKA [...]
) e echo
são exemplos.
Para saber mais, consulte a seção SHELL BUILTIN COMMANDS
de man bash
ou a seção on-line manual do bash . Para obter uma lista de builtins disponíveis, execute help
no prompt de comando. Para obter informações sobre um determinado elemento incorporado, digamos test
, execute help test
. Observe que help test
fornecerá informações sobre o test
builtin do bash, enquanto, por contraste, man test
provavelmente fornecerá ajuda sobre o comando test
externo.
Quais comandos estão disponíveis como executáveis e incorporados
Com a opção -a
, type
exibirá todos os locais que contêm o comando nomeado. Por exemplo:
$ type -a echo
echo is a shell builtin
echo is /bin/echo
Como usar um executável quando um builtin está disponível
Se, por algum motivo estranho, você quiser usar um executável específico e não o shell embutido, tudo o que você precisa fazer é especificar o caminho:
$ /bin/echo "This is not the builtin"
This is not the builtin
Como os recursos internos geralmente têm mais recursos, isso geralmente é útil apenas para testes de compatibilidade.
Como executar o shell embutido quando está oculto por uma função ou alias
Tendo em vista uma escolha, o shell normalmente escolherá executar o comando incorporado. A exceção é se o usuário tiver definido um alias ou função com o mesmo nome. Se você quiser ter certeza de que está executando o builtin, use o comando builtin
:
$ builtin echo 1 2 3
1 2 3