使所有用户可以从任何地方访问 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 的头部或尾部。这是一个永久性的更改,每次登录时都会生效。因此有一些选项。

相关内容