shell-scripts icon indicating copy to clipboard operation
shell-scripts copied to clipboard

pip安装失败

Open zhuantouer opened this issue 3 years ago • 7 comments

服务器是ubuntu 20.04, python3.8, python3.7, python2都试过了,报下面的错误:

2021-01-30 17:12:50 (63.8 MB/s) - ‘kcptun-v20210103.tar.gz’ saved [6367092/6367092]

+ sha1sum -c
+ echo '31ced1ecd7adefdc62d1f311e88d9d307c229dc8  kcptun-v20210103.tar.gz'
kcptun-v20210103.tar.gz: OK
+ tar -zxf kcptun-v20210103.tar.gz -C /usr/local/kcptun
+ sleep 3
+ python
+ wget -qO- --no-check-certificate https://bootstrap.pypa.io/get-pip.py
Traceback (most recent call last):
  File "<stdin>", line 24226, in <module>
  File "<stdin>", line 199, in main
  File "<stdin>", line 82, in bootstrap
  File "/tmp/tmpEXomXf/pip.zip/pip/_internal/cli/main.py", line 60
    sys.stderr.write(f"ERROR: {exc}")
                                   ^
SyntaxError: invalid syntax

环境已经有pip了,为啥还要get-pip.py | python ?

zhuantouer avatar Jan 30 '21 09:01 zhuantouer

python -V

看看是什么版本?

kuoruan avatar Jan 31 '21 05:01 kuoruan

python -V

看看是什么版本?

ubuntu 20.04系统默认是py3.8, 通过conda装了py2, py37,都试了下,报同样的错误 怀疑是脚本哪里没有载入系统环境,因为在命令行运行 python -v, pip --version, which python which pip都是正常的,但是脚本没有检测到这些变量

zhuantouer avatar Jan 31 '21 06:01 zhuantouer

https://github.com/kuoruan/shell-scripts/blob/master/kcptun/kcptun.sh#L807

脚本会先执行 command -v python 判断是否已经安装python,然后 python -V 看 python 版本,看看你 python -V 输出的版本号是什么

kuoruan avatar Jan 31 '21 06:01 kuoruan

换了个centos 7.x,还是报一样的问题 cent7下python -V输出:Python 2.7.5

zhuantouer avatar Jan 31 '21 07:01 zhuantouer

command -v python python 在哪个路径?

kuoruan avatar Jan 31 '21 07:01 kuoruan

又换了个服务器,centos 7.x, 系统自带的Python,新的问题是pip有问题

++ echo 2.7.5
++ cut -d. -f1
+ local major_version=2
++ echo 2.7.5
++ cut -d. -f2
+ local minor_version=7
+ '[' -z 2 ']'
+ '[' -z 7 ']'
+ is_number 2
+ expr 2 + 1
+ local is_python_26=false
+ '[' 2 -lt 2 ']'
+ '[' 2 = 2 ']'
+ '[' 7 -lt 6 ']'
+ '[' 2 = 2 ']'
+ '[' 7 = 6 ']'
+ command_exists pip
+ command -v pip
+ command_exists pip
+ command -v pip
+ pip --version
+ cat
检测到当前环境的 pip 命令已损坏,
请检查你的 python 环境。
+ exit 1
[root@ ~]# command -v python
/usr/bin/python
[root@xxx ~]# 
[root@xxx ~]# 
[root@xxx ~]# 
[root@xxx ~]# 
[root@xxx ~]# python
Python 2.7.5 (default, Nov 16 2020, 22:23:17) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux2

[root@xxx ~]# command -v pip
/usr/bin/pip
[root@xxx ~]# pip -V
Traceback (most recent call last):
  File "/usr/bin/pip", line 9, in <module>
    load_entry_point('pip==21.0.1', 'console_scripts', 'pip')()
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 378, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 2566, in load_entry_point
    return ep.load()
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 2260, in load
    entry = __import__(self.module_name, globals(),globals(), ['__name__'])
  File "/usr/lib/python2.7/site-packages/pip/_internal/cli/main.py", line 60
    sys.stderr.write(f"ERROR: {exc}")
                                   ^
SyntaxError: invalid syntax
[root@xxx ~]# pip install readline
Traceback (most recent call last):
  File "/usr/bin/pip", line 9, in <module>
    load_entry_point('pip==21.0.1', 'console_scripts', 'pip')()
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 378, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 2566, in load_entry_point
    return ep.load()
  File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 2260, in load
    entry = __import__(self.module_name, globals(),globals(), ['__name__'])
  File "/usr/lib/python2.7/site-packages/pip/_internal/cli/main.py", line 60
    sys.stderr.write(f"ERROR: {exc}")
                                   ^
SyntaxError: invalid syntax

zhuantouer avatar Feb 02 '21 08:02 zhuantouer

pip --version

kuoruan avatar Feb 02 '21 08:02 kuoruan