1

Python プログラムを実行する bash スクリプトがあります。私はvirtualenvを使用しています。

まず、envをbashに含めます:

source ./ENV/bin/activate

次に、bash プロンプトに (ENV) プレフィックスが表示されます。

$ echo $PATH
/project/ENV/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/core_perl

Python プログラムを bash スクリプトから実行しようとすると、間違ったバージョンの Python で実行されます。ENV は Python 2.6 を使用しますが、システムはデフォルトで 3.2 を使用します。

PythonスクリプトからPythonバージョンを出力すると、3が出力されます。

しかし、なぜ?

ls -la
-rw-r--r-- 1 wnc wnc 2219 Sep 27 01:42 activate
-rw-r--r-- 1 wnc wnc 1275 Sep 27 01:42 activate.csh
-rw-r--r-- 1 wnc wnc 2414 Sep 27 01:42 activate.fish
-rw-r--r-- 1 wnc wnc 1129 Sep 27 01:42 activate_this.py
-rwxr-xr-x 1 wnc wnc 357 Sep 27 01:42 easy_install
-rwxr-xr-x 1 wnc wnc 365 Sep 27 01:42 easy_install-2.6
-rwxr-xr-x 1 wnc wnc 318 Sep 27 01:42 pip
-rwxr-xr-x 1 wnc wnc 326 Sep 27 01:42 pip-2.6
lrwxrwxrwx 1 wnc wnc 9 Sep 27 01:42 python -> python2.6 
lrwxrwxrwx 1 wnc wnc 9 Sep 27 01:42 python2 -> python2.6
-rwxr-xr-x 1 wnc wnc 6240 Sep 27 01:42 python2.6
4

1 に答える 1