zoukankan      html  css  js  c++  java
  • 自动化脚本- 安装更换Python3.5

    本脚本所有信息:

    1:判断是不是root用户,是则继续不是则退出脚本输出信息
    2:定义自己的版本
    3:根据用户输入的版本号,来下载对应的版本包
    4:使用系统命令wget来下载,注意wet后面有一个空格
    5:os.system执行系统命令
    6:如果无法下载,大部分是因为网络问题,提示用户检查网络
    7:判断相应的用户来根据这个版本进行相应的解压
    8:如果解压失败的话,提示信息,退出程序
    9:如果编译失败退出返回信息
    10:移动老的Python版本
    11:进行3.5软连接,如果失败则退出返回信息

    #coding=utf-8
    
    import os
    import sys
    
    if os.getuid() == 0:
        pass
    else:
        print("当前用户不是Root用户,请以Root用户执行脚本")
        sys.exit(1)
    
    #version = rat_input('请输入您想安装的Python版本号(2.7/3.5):')
    version = '3.5'
    
    if version == '2.7':
        url = 'https://www.python.org/ftp/python/2.7/Python-2.7.tgz'
    elif version == '3.5':
        url = 'https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz'
    else:
        print("您输入的版本号有误,请输入2.7或者3.5")
        sys.exit(1)
    
    cmd = 'wget '+url
    res = os.system(cmd)
    
    if res != 0:
        print('下载源码包失败,请检查当前网络')
        sys.exit(1)
    
    if version == '2.7':
        package_name = 'Python-2.7'
    else:
        package_name = 'Python-3.5.0'
        
    cmd = 'tar xf '+ package_name+ '.tgz'
    res = os.system(cmd)
    if res != 0:
        os.system('rm '+package_name+'.tgz')
        print('解压源码包失败,请重新运行这个脚本下载源码包')
        sys.exit(1)
    
    cmd = 'cd ' + package_name+ '&& ./configure --prefix=/usr/local/python && make && make install'
    res = os.system(cmd)
    if res != 0:
        print '编译Python失败'
        sys.exit(1)
    
    cmd = 'mv /usr/bin/python /usr/bin/python_old'
    res = os.system(cmd)
    if res !=0:
        print '移动失败,请手动移动(mv /usr/bin/python /usr/bin/python_old)'
        sys.exit(1)
    
    cmd = 'ln -s /usr/local/python/bin/python3.5 /usr/bin/python'
    res = os.system(cmd)
    if res != 0:
        print '软连接失败,请手动软连(ln -s /usr/local/python/bin/python3.5 /usr/bin/python)'
        sys.exit(1)
    
    cmd = "sed -i 's/python/python_old/g' /usr/bin/yum"
    res = os.system(cmd)
    if res != 0:
        print '修改失败,请手动修改文件内容:/usr/bin/yum - > #!/usr/bin/python 替换成 #!/usr/bin/python_old'
        sys.exit(1)
    
    cmd = "sed -i 's/python/python_old/g' /usr/libexec/urlgrabber-ext-down"
    res = os.system(cmd)
    if res != 0:
        print '修改失败,请手动修改文件内容:/usr/libexec/urlgrabber-ext-down - > #!/usr/bin/python 替换成 #!/usr/bin/python_old'
        sys.exit(1)

    执行完成之后,查看版本是否是Python3.5. 如果是则安装成功。

  • 相关阅读:
    安装tensorflow-gpu
    Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
    js,jq获取父,兄弟,子节点整理
    dos 命令
    用JavaScript实现自动点击由confirm弹出的对话框中的“确定”按钮
    解决UnicodeEncodeError: 'gbk' codec can't encode character u'u25aa' in position 344 : illegal multiby
    JS中的document.title可以获取当前网页的标题
    python中的3目运算(3元表达式)
    ajax 怎么重新加载页面
    python win32api 如何用代码模拟点击网页confirm框的确定按钮
  • 原文地址:https://www.cnblogs.com/willamwang/p/10059925.html
Copyright © 2011-2022 走看看