executableの場所を探すときwhichではなくcommandを使う習慣
whichを使わない一番の理由はcoreutilsに入ってないから(commandはたいていのshellでbuiltin functionになっている)。
- ash(1): command interpreter - Linux man page
- dash(1) - Linux manual page
- Bash Builtins (Bash Reference Manual)
たぶんDockerfileでいろいろやっているときに身についた振る舞いだと思う。
ポータビリティを高めるとかの高い意識ではなく、何度もcommand not foundに遭遇して面倒になったことが主な動機で、そこから派生してwhichコマンドの存在を無視する(頼らない)ようになった感じ。
あと、軽量なDockerイメージを作るのがかっこいいと見做された時期があって(時期というより原則だけど)、インストールするパッケージを減らす効果があった。