Quando uso il type
comando per scoprire se cat
è incorporato un programma shell o un programma esterno ottengo l'output seguente:
-$ type cat
cat is hashed (/bin/cat)
-$
Questo significa che cat
è un programma esterno che è /bin/cat
?
Mi sono confuso, perché quando ho controllato l'output qui sotto echo
ho visto che è built-in
un programma ma anche un programma/bin/echo
-$ type echo
echo is a shell builtin
-$ which echo
/bin/echo
-$
Quindi non ho potuto usare la logica che /bin/cat
significa necessariamente un programma esterno, perché l'eco era /bin/echo
ma era ancora integrato.
Quindi, come faccio a sapere cos'è cat
? Integrato o esterno?
type which
potrebbe darti la risposta perché which
non ti darà la risposta.
cat
e ls
sono / sono stati scritti dallo stesso Stallman. Saresti sorpreso di quante cose ha scritto. Non dimenticare che ha scritto le prime versioni del compilatore che è oggi il miglior compilatore al mondo che compila TUTTO e la maggior parte dei programmi di utilità principali. Sto solo dicendo