如何编写将在任何Red Hat计算机上运行的python脚本?

时间:2019-06-09 22:54:22

标签: python linux redhat

如果python脚本在未安装模块的RHEL 5(2.4.3)上运行,是否可以保证在任何RHEL 5、6或7的计算机上运行?如何处理“ / usr / bin / env python”不是python 2.x的机器?

2 个答案:

答案 0 :(得分:0)

不能保证,但是可以处理!

RHEL 5中的python版本可能不是RHEL 6或7中的默认版本。

但这不是一个大问题,所需的版本可能/可能未安装在其他计算机上。 无论如何,在获得所需版本后,您可以轻松地使用该版本运行脚本。

python2 python2-script.py

答案 1 :(得分:0)

您的脚本是否需要在Python 2中运行,还是可以转换为与Python 2和3兼容?

否则,您可以运行类似于以下bash脚本的内容,以在运行脚本之前检查安装的python版本,并在运行脚本之前安装所需的软件。

# Change this to whatever the name of your script is
myscript=<The_name_of_your_script>
if python -V | grep -iq 'Python 2'; then
    python $myscript
else
    # Install prerequisites
    yum install gcc openssl-devel bzip2-devel

    # Make temp dir for python source
    if [ -d ~/tmp ]; then
        mkdir -p ~/tmp
    fi
    cd ~/tmp

    # Download and compile python 2
    wget https://www.python.org/ftp/python/2.7.16/Python-2.7.16.tgz
    tar xzfv Python-2.7.16.tgz
    cd Python-2.7.16
    ./configure --enable-optimizations
    make altinstall

    # Run your script with python 2
    /usr/local/bin/python-2.7 $myscript
fi