python为脚本创建系统别名

python为脚本创建系统别名,python,sh,Python,Sh,我正在为我的python项目创建一个安装脚本,该脚本将安装我需要的所有外部依赖项,以便正常运行 我想创建一个名为myScript的系统别名,它将是path/to/script/run.py的别名,因此用户只需使用myScript命令即可运行它 如何操作?在终端: gedit ~/.bashrc 然后在内部。bashrc: alias myScript ='python path/to/script/run.py' 重新加载bash,它应该可以工作 为了确保在何处执行脚本,现在要编辑哪个文件,

我正在为我的python项目创建一个安装脚本,该脚本将安装我需要的所有外部依赖项,以便正常运行

我想创建一个名为
myScript
的系统别名,它将是
path/to/script/run.py的别名,因此用户只需使用myScript命令即可运行它

如何操作?

在终端:

gedit ~/.bashrc
然后在内部。bashrc:

alias myScript ='python path/to/script/run.py'
重新加载bash,它应该可以工作

为了确保在何处执行脚本,现在要编辑哪个文件,可以使用Python进行检查:

>>> import platform
>>> platform.system()
'Linux'
>>> 
要检查它是否为Mac,请执行以下操作:

platform.mac_ver()

如果您的项目有一个
setup.py
脚本,并且您正在使用
setuptools
安装python包、脚本和依赖项(您应该这样做),那么您可以使用
setuptools
入口点

setup.py

from setuptools import setup

setup(
    # other arguments here...
    entry_points={
        'console_scripts': [
            'myScript = my_package.run:main',
        ],
    },
)
您的项目结构应如下所示:

setup.py
/my_package
    __init__.py
    run.py

您的
run.py
脚本应该有一个
main()
函数,当有人在命令行键入
myScript
时,该函数将运行。无论他们使用的是什么shell或您使用的是什么平台,这都能正常工作。

只要把它放在.bashrc中就行了。有没有办法让我知道系统是否使用.bachrc(linux、ubuntu等)或.profile(Mac)@AsafNevo I哪种方式?甚至在创建alias之前?或者在python脚本中?我想确保我正在将别名添加到正确的文件中。。所以它应该是python脚本内部的,这取决于,我是一个用户,还有人可能会使用
zsh
,等等。