すべてのユーザーがどこからでもPythonファイルにアクセスできるように設定

すべてのユーザーがどこからでもPythonファイルにアクセスできるように設定

次のPythonスクリプトを実行する必要があるプログラムをインストールしました。

python fit_locus.py --help

すべてのユーザーがPythonファイルフォルダに移動しなくても、ホームフォルダからそのコマンドを実行できるようにファイルにアクセスできるようにしたいと思います。

PATH変数にインストールフォルダを追加し、/binと/usr/binのファイルへのシンボリックリンクを作成しましたが、うまくいきませんでした。

これは可能ですか、またはユーザーにプログラムがインストールされているフォルダに移動するように依頼する必要がありますか?

編集:私のパス変数は次のとおりです。

エクスポートなし:

/gasgano/bin:/opt/intel/composer_xe_2011_sp1.9.293/bin/intel64:/usr/local/sbin:/‌​usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/esoreflex/bin:/‌​opt/intel/composer_xe_2011_sp1.9.293/mpirt/bin/intel64

エクスポートの場合:

/gasgano/bin:/opt/intel/composer_xe_2011_sp1.9.293/bin/intel64:/usr/local/sbin:/‌​usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/esoreflex/bin:/‌​opt/intel/composer_xe_2011_sp1.9.293/mpirt/bin/intel64:/opt/big-macs-calibrate/

パスは/opt/big-macs/calibrate/Pythonスクリプトfit_locus.pyを含むパスです。

編集2:

私がすべてのユーザーに提供したいプログラムのインストール手順の中には、次の小さなガイドがあります。

環境変数を設定します。

1 - BIGMACSインストールディレクトリパス

例えば、

setenv BIGMACS /Users/ronald/big-macs-calibrate/ (tcsh shell)      
BIGMACS=/Users/ronald/big-macs-calibrate/ (bash shell)
export BIGMACS

2 - PYTHONPATHにインストールディレクトリを追加する

例えば、

setenv PYTHONPATH $BIGMACS:PYTHONPATH (tcsh shell)
PYTHONPATH=$BIGMACS:PYTHONPATH
export PYTHONPATH

しかし、それも動作しません。実行しようとしたときに発生するエラーはpython fit_locus.py --help次のとおりです。

python: can't open file 'fit_locus.py': [Errno 2] No such file or directory

答え1

このようなタスクを簡単に実行するには、Pythonスクリプトの最初の行に次を追加します。

#! /usr/bin/python

そしてファイル自体は実行可能でなければなりません。つまり、xビットを設定する必要がありますchmod +x fit_locus.py

変更されたパスにスクリプトがあるので、ユーザーは名前を入力するだけです。簡単にするために、「.py」を削除して、ユーザーが入力のみを許可できるようにします。

fit_locus --help

ユーザーにPythonスクリプトであることを知らせたい理由がなければ。

答え2

別の方法は、デスクトップランチャーを作成することです。これはファイルの正確なパスを指定します。その後、ランチャーを各ユーザーのデスクトップにコピーできます。別のアプローチは、各ユーザーのホームフォルダに入るより小さな起動スクリプトを使用することです。ただし、開始するには、スクリプト名の前に ./、~/、または $HOME/ を使用する必要があります。

ただし、各ユーザーの.bashrcまたは.profileを変更する場合は、各ユーザーの$ PATHの先頭または末尾にフォルダを追加できます。これはログインするたびに適用される永続的な変更です。だからいくつかのオプションがあります。

関連情報