Kiedy używam type
polecenia, aby dowiedzieć się, czy cat
jest wbudowana w powłokę, czy program zewnętrzny, otrzymuję dane wyjściowe poniżej:
-$ type cat
cat is hashed (/bin/cat)
-$
Czy to oznacza, że cat
jest to program zewnętrzny /bin/cat
?
Byłem zdezorientowany, ponieważ kiedy sprawdziłem dane wyjściowe poniżej echo
, zobaczyłem, że jest built-in
to program, ale także/bin/echo
-$ type echo
echo is a shell builtin
-$ which echo
/bin/echo
-$
Nie mogłem więc użyć logiki, która z /bin/cat
konieczności oznacza program zewnętrzny, ponieważ echo było /bin/echo
jednak nadal wbudowane.
Więc skąd mam wiedzieć, co cat
to jest? Wbudowany czy zewnętrzny?
type which
może dać ci odpowiedź, dlaczego which
nie da ci odpowiedzi.
cat
i ls
są / były napisane przez samego Stallmana. Byłbyś zaskoczony, jak wiele rzeczy napisał. Nie zapomnij, że napisał pierwsze wersje kompilatora, który jest obecnie najlepszym kompilatorem na świecie, który kompiluje WSZYSTKO i większość podstawowych narzędzi. Tylko mówię