Debian 7.5を使用していますが、Python 3.3および3.2をインストールしました。3.3をコマンドラインでpython
と入力した場合のデフォルトにするにはどうすればよいですか?
コマンドラインでpython
と入力したときに実行されるpythonのバージョンを変更し、その場合にのみ、シェル初期化ファイル(対話型シェル用)にエイリアスを定義します。これは、bashの場合は~/.bashrc
、zshの場合は~/.zshrc
、cshの場合は~/.cshrc
、魚の場合は~/.config/fish/config.fish
です。インストールのPython 3.3の正しいパスを使用します。
alias python='/usr/local/bin/python3.3'
これをすべてのユーザーに対して機能させたい場合は、システム全体のファイルに入れることができます。ただし、これにより、コマンドラインで入力されたpython
が、スクリプトまたはその他の場所から実行されたpython
とは異なるバージョンになり、混乱を招くため、お勧めしません。
Debian wheezyでは、デフォルトの検索パスのpython
はPython 2.7である必要があります。これに依存するプログラムがあるためです(いくつかのパッケージにはPythonがあり、#!/usr/bin/env python
彼らの Shebang lineとして)。必要に応じて、Python3のシステムデフォルトをDebianwheezyに付属の3.2ではなくPython3.3に変更できます。そのためには、/usr/local/bin
にシンボリックリンクを作成します(これを行うには、rootである必要があります)。 Python 3を/usr/local
に直接インストールした場合:
ln -s python3.3 /usr/local/bin/python3
別の場所にインストールした場合:
ln -s /path/to/python3.3/bin/python3.3 /usr/local/bin/python3
Shebang #!/usr/bin/python3
を備えたDebianに同梱されているスクリプトは引き続き3.2を使用しますが、#!/usr/bin/env python3
を使用するスクリプトは3.3を使用するようになり、コマンドラインでpython3
と入力すると3.3が呼び出されます。