目前CentOS7.9自带的python版本是python2.7.5。由于yum这个软件需要系统自带的python工作。
如果冒然用自己安装的python替换掉系统自带的,可能造成yum不工作。
先安装这两个包
readline-devel 如果没有安装的话,会造成进入python解释器上下左右回退键都输入不正常。
如果你安装好的python,解释器里上下左右不正常的,下载这个软件包,重新编译即可。
yum install -y readline-devel
如果缺少openssl-devel的话,访问https会无法工作。
yum install -y openssl-devel
下载
cd /tmp
wget https://www.python.org/ftp/python/2.7.18/Python-2.7.18.tar.xz
解压缩
tar -xJvf Python-2.7.18.tar.xz
编译
cd Python-2.7.18/
./configure --prefix=/usr/local/python2.7
make
make install
链接
ln -s /usr/local/python2.7/bin/python2.7 /usr/local/bin/python
由于系统自带的python路径是/usr/bin/python。PATH中,/usr/local/bin比/usr/bin靠前,所以当你输入python,系统会自动启动你安装的python2.7.18。
echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
在python脚本中,你可以使用env来搜寻python
#!/bin/env python
这样,CentOS7.9调用的也是你安装的2.7.18。好处是当你在别的环境里运行,不需要改第一行也能执行。当然你也可以使用绝对路径:
#!/usr/local/bin/python
这样当在别的环境中执行,你需要用sed把第一行的路径替换下。