Q. Which shell am I using?
A. There are two ways
% echo $0 /usr/bin/zsh % ps -p $$ PID TTY TIME CMD 29189 pts/1 00:00:00 zsh
If necessary, the last command can be parsed as follows.
% ps -hp $$|awk '{print $5}' /usr/bin/zsh