簡體   English   中英

在 Kali Linux 中,為什么我只在 /usr/bin/ 中看到 python2 和 python3 二進制文件(不是“python”二進制文件)並得到“找不到 python 命令”

[英]In Kali Linux, why do I only see python2 and python3 binaries (NOT a 'python' binary) in /usr/bin/ and get "python command not found"

我正在運行最新版本的 Kali Linux:

uname -a                           
Linux User 5.14.0-kali4-amd64 #1 SMP Debian 5.14.16-1kali1 (2021-11-05) x86_64 GNU/Linux

它已經與 Python 3.9.8 一起提供。 但我需要安裝 Python 2.7。 所以我先用sudo apt install python2.7.18. 但發生了以下情況:

python -V        
Command 'python' not found, did you mean:
  command 'python3' from deb python3
  command 'python' from deb python-is-python3

python2 -V  
Python 2.7.18

python3 -V       
Python 3.9.8

還:

which python
python not found

我嘗試了什么:

我檢查了/usr/opt//usr/bin//usr/share/等位置。我檢查了/usr/bin並找到了 python2 和 python3 二進制文件:

在此處輸入圖像描述

所以我認為沒有設置 python 環境變量。 我將python=/usr/bin/python2添加到/etc/environment然后做了source /etc/environment 但這並沒有幫助。

然后我檢查了/usr/share ,發現python文件夾在那里。

在此處輸入圖像描述


然后我在互聯網上做了一些研究,發現pyenv ,這顯然允許我們安裝和使用多個 Python 版本而不會相互沖突。 所以我按照給定指南中的所有步驟安裝了 Python 2.7.18 並將其設置為默認值。 但這也沒有解決問題

sudo apt install -y build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python3-openssl git

curl https://pyenv.run | bash

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc     

echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc

echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.zshrc

exec $SHELL

pyenv 2.2.3

pyenv install 2.7.18

pyenv global 2.7.18

然后我檢查了:

pyenv versions                                                                                                                                                                              1 ⨯
  system
* 2.7.18 (set by /home/bruno/.pyenv/version)

到目前為止,一切都很好。 但是之后:

python           
Command 'python' not found, did you mean:
  command 'python3' from deb python3
  command 'python' from deb python-is-python3

此外,確認:

在此處輸入圖像描述

因為該發行版想要清楚您正在運行哪個版本的 Python,並且完全允許這樣做

簡而言之,您必須使用python3運行 Python 3.x 和python2 (如果這樣的符號鏈接由pyenv設置,或者如果您apt install python2.7 (如果它甚至在 Kali 上可用))運行 ZA7F5F35426B927411FC9231B56382173 2.x。

請記住 Python 2.x 已停產,您不應將其用於任何新開發。

手動將/home/bruno/.pyenv/versions/2.7.18/bin的路徑添加到 $PATH 環境變量解決了我python command not found ,因為該目錄包含python二進制文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM