郑重声明如有雷同纯属巧合,本人自学的没有任何编程经验 ,写的不好 随便喷 。废话不多说,直接上代码。
实验环境:
Cent OS 6.5
python 2.6.6(系统默认的)
目前提供安装的版本是2.7.8或者3.5.2
#!/usr/bin/python
#coding=utf-8import os
import sys
if os.getuid() == 0:
pass
else:
print'当前用户不是root用户,请以root用户脚本执行'
sys.exit()
cmd = os.path.exists('/media/cdrom/')
if cmd != True:
cmd = 'mkdir /media/cdrom'
os.system(cmd)
print '目录创建完毕!!!'
else:
print '目录已经有,无需创建!!!'
print '++++++++++++++++安装所需的依赖包++++++++++++++++++++++++'
print '请把光盘放入光驱内'
cmd = 'mount /dev/cdrom /media/cdrom/'
os.system(cmd)
cmd = 'yum install -y openssl** openssl-devel readline-devel zlib-devel gcc* -y'
os.system(cmd)
print '+++++++++++++++依赖包安装成功+++++++++++++++++++++++++++'
print list_file
version = raw_input('请输入你想安装的python版本(2.7.8/3.5.2)')
package_name = 'Python-'+version
print package_name
if version == '2.7.8':
url = 'wget https://www.python.org/ftp/python/2.7.8/Python-2.7.8.tgz'
elif version == '3.5.2':
url = 'wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz'
else:
print '你输入的版本号有误,请核对后重新输入!!!'
sys.exit(1)
cmd = 'tar -zxf '+package_name+'.tgz'+'&& cd '+package_name+'&& ./configure && make && make install'
command = 'mv /usr/bin/python /usr/bin/python2.6 && ln -s /usr/local/bin/python2.7 /usr/bin/python '+'&& sed -i '+'s/pyhton/pyhton2.6/g'+' /usr/bin/yum'
if package_name+'.tgz' in list_file:
print '当前目录有了安装包了不用下载了,正在安装请稍等..........'
os.system(cmd)
os.system(command)
print '恭喜你升级到'+package_name
elif package_name+'.tgz' not in list_file:
print '正在下载安装包,准备安装!!!'
os.system(url)
print '下载完成,正在安装.......................'
os.system(cmd)
os.system(command)
print '恭喜你升级到'+package_name
res = os.system(url)
if res != 0:
print '下载失败,请检查网络'