Qual è lo scopo del builtin
integrato quando il command
builtin ha la stessa identica funzionalità quando si tratta di cercare i builtin?
Quando ci si assicura che un particolare built-in sia scelto su una funzione con lo stesso nome, builtin
non offre alcun valore aggiuntivo rispetto a command
. Si potrebbe obiettare che builtin
è più esplicito ma comunque, potrei solo immaginarlo usando command
potrebbe essere scelto quando non si è sicuri che qualche comando sia disponibile anche come integrato.
Risposta accettata:
builtin
non è un'utilità standard.
La documentazione standard POSIX lo dice nella sezione Razionale per il command
utilità:
Il command
l'utilità è in qualche modo simile alla shell dell'ottava edizione builtin
comando, ma poiché command
va anche al file system per cercare utilità, il nome builtin
non sarebbe intuitivo.
Il builtin
l'utilità è fornita da bash
per compatibilità con le versioni precedenti.
Prendo atto che dash
, ad esempio, non implementa builtin
:
$ builtin printf 'hellon'
/usr/local/bin/dash: 3: builtin: not found