Этот вопрос уже имеет ответ здесь:
Существует ли простой способ, которым я могу сказать, какой тип Unix окружают, я нахожусь в?
Команда, которая показывает, являюсь ли я в a bash
/ csh
/ ksh
/ tcsh
/ zsh
?
т.е.
whatshellisthis
Попробуйте:
echo $0
Это часто работает с разными оболочками.
mac:~$ ps
PID TTY TIME CMD
223 ttys000 0:00.33 -bash
obsd:~$ ps
PID TT STAT TIME COMMAND
20038 p0 Ss 0:00.01 -ksh (ksh)
22251 p0 R+ 0:00.00 ps
Или просто echo $ SHELL
Каждый известный мне shell устанавливает переменную $ ($$) в свой pid. Итак...
ps | grep $$