Is there a way to list all available commands in terminal Is there a way to list all available commands in terminal? 

I know linux has compgen -c is there an equivalent command for OS X?

Update:
The actual issue was that I was using zsh instead of bash. So from zsh, I could either just open bash or run a bash command from zsh bash -c "compgen -c"
In zsh you need to enable the completion system. Please read through man zshcompsys. To install the completion system enter the command 

compinstall


and follow the directions. Check the fpath variable

echo $fpath


in my situation I needed to declare the variable in my .zshrc

fpath=(/usr/local/share/zsh/5.0.7/functions)


This is the location of my zsh functions. After the compinit line in your .zshrc add the following lines

autoload -Uz bashcompinit
bashcompinit


This is the completions entries in my .zshrc

#\\\_ COMPLETIONS _///#
zstyle :compinstall filename '/Users/fd0/.zshrc'
zstyle ':completion:*' list-colors "${(@s.:.)LS_COLORS}"
autoload -Uz compinit
compinit
autoload -Uz bashcompinit
bashcompinit


I can now enter the command compgen -c and it behaves similar to bash.