操作系统:CentOS
我想将python脚本部署为较大软件包的一部分,任何python3 +都可以。在我们这里拥有的VM上,我看到了python3,python36,python36u和python34。如果我也不想安装新的python3 +,如果包装盒只有python2 +,我想安装python3。
沿着同一行,我想使用python3,python34,python36或其他可用的工具。
我正在使用.rpm进行部署,但是我在管理规范文件中管理这种复杂性方面没有任何运气。我的解决方法是编写一个bash脚本来处理python检测和安装。
有没有办法解决这个问题?
编辑-添加有关软件包安装的详细信息
PRETTY_NAME =“ CentOS Linux 7(Core)”
yum install -y python34
yum list installed | grep python3
# python34.x86_64 3.4.10-2.el7 @epel
# python34-libs.x86_64 3.4.10-2.el7 @epel
which python3
# usr/bin/which: no python3 in (/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin)
which python3.4
# /usr/bin/python3.4
为了后代,我将发布解决方案
#!/usr/bin/env bash
export PYTHONS
export RVAL
PYTHONS=$(compgen -c | grep "^python3.*[0-9]*$")
RVAL=$?
if [ $RVAL -ne 0 ] ; then
yum install -y python3
PYTHON="python3"
else
PYTHON=$(echo "$PYTHONS" | head -1)
fi
echo "$PYTHON"
$PYTHON myscript.py