检测服务器上python版本脚本

来源:互联网 发布:软件测试条件逻辑 编辑:程序博客网 时间:2024/06/07 05:43

检测服务器上python版本是否在2.7范围内,不在2.7范围内则一键安装替换python版本为2.7.4,注意python版本不同使用查看版本的方式也不同

2.4的可以使用python --version查看,2.7需要使用python -V查看

推荐python -V

脚本内容如下:

#!/bin/bash# written by wzq# date:2017-06-20 touch /mapbar/src/python_version.txtpython -V &> /mapbar/src/python_version.txtver=`awk -F '.' 'OFS="." {print $2}' /mapbar/src/python_version.txt`#ver1=$(echo "$ver < 7" | bc)    #启用bc判断小数#ver2=$(echo "$ver >= 8" | bc)#if [ $ver1 -eq 1 -o $ver1 -eq 1 ];#       then #               echo you shuld update#fiif [ $(echo "$ver < 7"|bc) -eq 1 -o $(echo "$ver >= 8"|bc) -eq 1 ];then        echo "###判断python包是否存在###"        if [ -f /mapbar/src/Python-2.7.4.tgz ]        then                tar -zxvf /mapbar/src/Python-2.7.4.tgz -C /mapbar/src/                break        else                wget -P /mapbar/src/ https://www.python.org/ftp/python/2.7.4/Python-2.7.4.tgz                tar -zxvf /mapbar/src/Python-2.7.4.tgz -C /mapbar/src/                break        fi        if [ -d /mapbar/app/python ];        then                mv /mapbar/app/python /mapbar/app/python.bak                break        fi##########开始安装##########        echo "###开始安装python###"        cd /mapbar/src/Python-2.7.4        ./configure --prefix=/mapbar/app/python        make && make install#       ?=`echo $?`        if [ `echo $?` -eq 0 ];        then                cd /mapbar/app/python/bin/                cp python2.7 /usr/bin/        else                rm -rf /mapbar/app/python                exit        fi########替换python版本#########        cd /usr/bin/        mv python python.bak        cp python2.7 python        echo "###运行python,请按Ctrl+d退出###"        python#       python >/dev/null 2>&1 #       quit ()########部署完成###############else        exitfiecho "###python安装替换完成###" 


上述虽然改完了版本,但是如果你是centos5的系统,那么yum是无法使用的,centos5的自带python是2.4版本的,需要更改到以前的python版本

使用whereis python   可以查看到/usr/bin下的所有python版本,到/usr/bin/yum下修改指定回原来版本,如#!/usr/bin/python2.4

centos6的系统默认python版本是2.6,改法和centos5一样。

centos7的系统默认版本是python2.7,不需要再往高处升级。

如果不修改/usr/bin/yum ,则yum无法使用

如果不修改/usr/bin/yum-updatest  会出现如下错误

 File "/usr/sbin/yum-updatesd", line 35, in <module>
    import dbus
ImportError: No module named dbus


原创粉丝点击