なぜ'どのようなものですか?`エイリアスを選択していませんか? [コピー]

なぜ'どのようなものですか?`エイリアスを選択していませんか? [コピー]

私はOSXを使用しており、python --versionbashシェルで実行すると、次のような結果が得られます。

$ python --version
Python 3.7.3

しかし、which pythonコマンドはバージョン2.7を指しているようです。

$ which python
/usr/local/bin/python ls -al /usr/local/bin/python
lrwxr-xr-x  1 me  admin  36 11 Apr 22:28 /usr/local/bin/python -> ../Cellar/python@2/2.7.16/bin/python

私がこれをしたからだと思いますalias python=python3。しかし、なぜwhich python別名が選択されないのですか?

ベストアンサー1

GNUは - シェルプロンプトに入力したときに実行される実行可能ファイル(またはエイリアスまたはシェル関数)を見つけるユーティリティです。

which(1) のマニュアルページから盗む:

このユーティリティを使用するための推奨される方法は、エイリアス(Cシェル)またはシェル関数(Bourneシェル)を次のように追加することですwhich

which () {
  (alias; declare -f) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot $@
}
export -f which

この機能を永久に有効にするには、それを~/.bashrcシェルまたは使用するシェルに入れます。

おすすめ記事