File “/usr/bin/yum“, line 30 except KeyboardInterrupt, e: ^SyntaxError: invalid syntax错误处理

1.错误原因

1. File "/usr/bin/yum", line 30 except KeyboardInterrupt, e: ^SyntaxError: invalid syntax
  • 因为yum采用python作为命令解释器,原来系统自带的python解释器为python2,然后有可能之前在配置开发环境时,将python默认的解释器设为了python3,导致按python3解析python2的语法出错了。
  • 同理,在使用pip,virtualenv等依赖原版本python的工具也会出现此类问题
    1. 如果你已经误删了Centos系统自带的python版本,请参考此文章进行恢复。
    2. 如果你只是修改了原来的软链接,使得python实际指向的是新版本的python的话,那pip等仍依赖旧版本的工具要么重装要么修改它py文件的首行(即py文件头的环境变量)

上述两种情况自查:
键入python 后,按住Tab键(有可能需要按两次)补全,可以看到现有的所有python版本,我这里初步查看后都是最初的2.7.5版本,如下图。更多python版本升级相关内容可以查看文章)
其中键入python 显示的版本就是当前默认软连接的版本
如果查看所有版本后,发现没有python2.x,那么是第一种情况
如果有python2.x,但是python软连接的版本是3.x(即键入python 显示的版本),那么就是第二种情况
File “/usr/bin/yum“, line 30 except KeyboardInterrupt, e: ^SyntaxError: invalid syntax错误处理_第1张图片

2.处理方式一:重装yum等工具(升级)

  • 参考文章

3.处理方式二:修改对应py文件头的环境变量

  • 以yum为例
vim /usr/bin/yum
  • 按下I键,进入编辑状态,修改/usr/bin/yum文件中的第一行为你对应的初始python版本号:
#!/usr/bin/python2.7
  • Esc键退出,:wq!保存并退出,可以正常使用了(不过使用的仍然是旧版本)
  • pip等同样方式修改文件头即可

你可能感兴趣的:(Linux,python,linux,yum)