Un builtin della shell, in informatica è un comando o una funzione, chiamato da una shell e che viene eseguito direttamente nella shell stessa. In ciò differenziandosi da programma eseguibile esterno che la shell caricherebbe ed eseguirebbe.[1][2][3][4]
I builtins della shell funzionano significativamente più velocemente rispetto ai programmi esterni, perché non c'è alcun overhead di caricamento del programma. Tuttavia, il loro codice è intrinsecamente presente nella shell e, pertanto, modificarli o aggiornarli richiede modifiche alla shell stessa, venendo perciò utilizzati per funzioni semplici, quasi banali, come la produzione di output di testo.
A causa della natura di alcuni sistemi operativi, certe funzioni dei sistemi devono necessariamente essere implementate come builtins della shell. L'esempio più noto è il comando cd
, che cambia la directory di lavoro della shell. Poiché ogni programma eseguibile viene eseguito in un separato processo separatp e le directory di lavoro sono specifiche per ogni processo, il caricamento di cd
come programma esterno non influirebbe sulla directory di lavoro della shell che lo ha caricato.[5]