エイリアスでwhichコマンドを使用できますか? [コピー]

エイリアスでwhichコマンドを使用できますか? [コピー]

例:

私は持っていますalias chrome='google-chrome'。私はwhich chrome同じものを返したいと思いますwhich google-chrome。つまり:

/usr/bin/google-chrome

それは可能ですか?

ベストアンサー1

本当にこれを行うには、whichそれをシェル関数としてオーバーライドできます。

which() {
  if [ -n "$(type "$1" | grep "is aliased")" ]; then
    command which $(type "$1" | awk '
      {cmd=gensub("[\140\047]", "", "g" , $NF);print cmd}')
  else
    command which "$1"
  fi
}

シェルがある場合、この機能は機能しますが、bash他のシェルを使用している場合は、機能を少し変更する必要があります。

おすすめ記事