type: type [-afptP] nazwa [nazwa ...] Wyświetlenie informacji o rodzaju polecenia. Określenie, w jaki sposób byłaby interpretowana każda NAZWA w przypadku użycia jako polecenie. Opcje: -a wyświetlenie wszystkich położeń zawierających program wykonywalny o podanej NAZWIE; obejmuje aliasy, polecenia wbudowane i funkcje tylko jeśli nie podano dodatkowo opcji `-p' -f pominięcie wyszukiwania funkcji powłoki -P wymuszenie wyszukiwania w PATH każdej nazwy, nawet jeśli jest aliasem, poleceniem wbudowanym lub funkcją i zwrócenie nazwy pliku na dysku -p zwrócenie nazwy pliku na dysku lub niczego, jeśli `type -t NAZWA' nie zwróciłoby `file'. -t zwrócenie pojedynczego słowa: `alias', `keyword', `function', `builtin', `file' lub `', jeśli nazwa jest odpowiednio: aliasem, zarezerwowanym słowem kluczowym powłoki, funkcją powłoki, poleceniem wbudowanym powłoki, plikiem na dysku lub nie zostanie znaleziona Argumenty: NAZWA Nazwa polecenia do zinterpretowania. Stan wyjściowy: Zwracana jest prawda, jeśli każda NAZWA zostanie znaleziona; fałsz, jeśli którakolwiek nie zostanie znaleziona.
Podpowiedź
Polecenie type
pozwala tylko na wyświetlenie rodzaju wpisanego polecenia, jego dopełnieniem może być zewnętrzne polecenie which
,
Podpowiedź
Polecenie type
różni się niewiele od polecenia compgen
johny@ThinkPad:~$ type bash
bash is /bin/bash
johny@ThinkPad:~$ type type
type is a shell builtin
Bardzo ciekawie działa funkcja type której argumentem jest nazwa funkcji zdefiniowanej przez uzytkownika.
Przykład
#!/bin/bash
moja_funkcja() {
echo "To ja funkcja"
}
moja_inna_funkcja() {
echo "Jestem inna funkcja"
}
type moja_funkcja
Skrypt wygeneruje następujace wyjście
johny@ThinkPad:~$ ./przyklad.sh
moja_funkcja jest funkcją
moja_funkcja () {
echo "To ja funkcja"
}
Poprawnie został rozpoznany typ polecenia (jest to funkcja), oraz została wyświetlona jej zawartość.