エイリアスを無視してコマンドのフルパスを取得するだけ
例えば .bashrc や .zshrc で ls の利便性を上げるために alias ls='ls -G' といったようにエイリアスを張っているとします.
この状態で ls コマンドのフルパスを取得するため which ls や type ls を実行するとフルパスではなく ls: aliased to ls -G のようなエイリアス情報が出てきててしまいます.
which -a ls や type -a ls のようにオプションを渡すことで ls: aliased to ls -G; /bin/ls とエイリアス・フルパス全ての情報を取得できますがフルパスのみ欲しい時にはちょっとばかし不便です.
解決策
$SHELL -c 'which ls'
もっといい方法がありそうだけど見当たらなかった (完)