【Python】pyenv的版本控制及global、shell、local命令區別
commands List all available pyenv commands local Set or show the local application-specific Python version global Set or show the global Python version shell Set or show the shell-specific Python version install Install a Python version using python-build uninstall Uninstall a specific Python version rehash Rehash pyenv shims (run this after installing executables) version Show the current Python version and its origin versions List all Python versions available to pyenv which Display the full path to an executable whence List all Python versions that contain the given executable
1.verson&versons
-
verson只顯示當前的python版本
-
versons顯示所有可用的python版本,當前使用的版本前帶*號
[python@192.168.240.77 RINGOO-1]: ~ 127> pyenv version system (set by /home/python/.pyenv/version) [python@192.168.240.77 RINGOO-1]: ~ 0> pyenv versions * system (set by /home/python/.pyenv/version) 3.5.3 3.6.3
2. global、shell、local之間的區別:
2.1. global 全域性設定
如果使用此命令,可以看到所有受到pyenv控制的視窗都受到了影響, 所以儘可能不要用root使用者來安裝pyenv,否則會影響到之前的系統
[python@192.168.240.77 RINGOO-1]: ~ 0> pyenv versions * system (set by /home/python/.pyenv/version) 3.5.3 3.6.3 [python@192.168.240.77 RINGOO-1]: ~ 0> pyenv global 3.5.3 [python@192.168.240.77 RINGOO-1]: ~ 0> pyenv versions system (set by /home/python/.pyenv/version) * 3.5.3 3.6.3 [python@192.168.240.77 RINGOO-1]: ~ 130> python -V Python 3.5.3
2. 2 shell 會話設定(隻影響當前的會話)
【會話1 】 :
[python@192.168.240.77 RINGOO-1]: ~ 130> pyenv version system (set by /home/python/.pyenv/version) [python@192.168.240.77 RINGOO-1]: ~ 0> pyenv shell 3.5.3 [python@192.168.240.77 RINGOO-1]: ~ 0> pyenv versions system * 3.5.3 (set by PYENV_VERSION environment variable) 3.6.3 [python@192.168.240.77 RINGOO-1]: ~ 0> python -V Python 3.5.3
可以看到會話1的pyenv和python顯示版本均為3.5.3
【會話2 】 :
[python@RINGOO-1 3.5.3]$ pyenv versions * system (set by /home/python/.pyenv/version) 3.5.3 3.6.3 [python@RINGOO-1 3.5.3]$ python -V Python 2.6.6
可以看到新開啟的會話是Python 2.6.6,並沒有受到影響,所以shell只會影響到當前的會話,一旦這個會話結束,則一切失效
2. 3 local 本地設定(隻影響所在資料夾)
新建檔案目錄test1/test2
mkdir -p test1/test2
並檢視當前test2目錄中的版本
[python@192.168.240.77 RINGOO-1]: ~ 0> mkdir -p test1/test2 [python@192.168.240.77 RINGOO-1]: ~ 0> ls test1 [python@192.168.240.77 RINGOO-1]: ~ 0> cd test1/test2 [python@192.168.240.77 RINGOO-1]: ~/test2 0> pyenv versions * system 3.5.3 (set by PYENV_VERSION environment variable) 3.6.3 [python@192.168.240.77 RINGOO-1]: ~/test2 0> python -V Python 2.6.6 [python@192.168.240.77 RINGOO-1]: ~/test2 0>
可以看到目前資料夾test2中的版本為:
-
pyenv system
-
python 2.6.6
使用local命令:
[python@192.168.240.77 RINGOO-1]: ~/test2 130> pyenv local 3.5.3
[python@192.168.240.77 RINGOO-1]: ~/test2 0> pyenv versions system * 3.5.3 (set by PYENV_VERSION environment variable) 3.6.3 [python@192.168.240.77 RINGOO-1]: ~/test2 0> python -V Python 3.5.3
可以看到test2資料夾中的版本被改為了:
-
pyenv 3.5.3
-
python 3.5.3
而進入上一級目錄(其他目錄均可)
[python@192.168.240.77 RINGOO-1]: ~/test2 0> cd .. [python@192.168.240.77 RINGOO-1]: ~/test1 0> pyenv versions * system 3.5.3 (set by PYENV_VERSION environment variable) 3.6.3 [python@192.168.240.77 RINGOO-1]: ~/test1 0> python -V Python 2.6.6
可以看到目前資料夾test1中的版本依舊為:
-
pyenv system
-
python 2.6.6
所以 local命令只會對當前的資料夾和其子目錄中的版本起作用 ,其他的目錄不起作用
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31442725/viewspace-2645366/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python多版本管理器-pyenv 介紹及部署記錄Python
- Ubuntu 下使用 pyenv 管理 Python 版本(qbit)UbuntuPython
- mac下利用pyenv管理多個版本的pythonMacPython
- Mac OS X 下 Python 多版本管理器 pyenv 的安裝及使用MacPython
- Git與其他版本控制系統的區別Git
- Python3 關鍵字nonlocal和global的用法與區別Python
- Spring中ref local=""與ref bean=""的區別SpringBean
- MacOS 下利用 pyenv 管理Python 版本和虛擬環境MacPython
- 終端和shell的區別
- [20210913]bash shell $* and $@ 的區別.txt
- Python 版本管理工具選擇與 Pyenv 使用說明Python
- local_irq_disable和disable_irq的區別
- Python中eval與exec的使用及區別Python
- python裡執行shell命令或cmd命令Python
- PEP8風格和python版本區別Python
- 【Python】pyenv 安裝方式Python
- Python2 和 Python3 的區別及相容技巧Python
- django版本區別Django
- Python: 列表、陣列及迭代器切片的區別及聯絡Python陣列
- 在MacOS使用輕量級工具Pyenv和Pipenv切換多版本PythonMacPython
- python語言中類和函式的作用及區別!Python函式
- thread local in pythonthreadPython
- Python中threading的join和setDaemon的區別及用法[例子]Pythonthread
- 用Pyenv 和 Virtualenv 搭建單機多版本 Python 虛擬開發環境Python開發環境
- source 和export 命令的區別Export
- linuxsu和sudo命令的區別Linux
- shell常用的命令
- python中 _、__、__xx__() 區別及使用場景Python
- shell指令碼中不識別source命令指令碼
- python控制windows命令列程式PythonWindows命令列
- python 中 is, is not ,==, != 的區別Python
- shell與Linux命令有什麼區別?它們之間有聯絡嗎?Linux
- Python2.x與3.x版本有哪些主要的區別?Python
- shell指令碼命令 執行python檔案&python命令列執行python程式碼指令碼Python命令列
- 學Python用哪個版本?Python3和Python2有何區別?Python
- 學Python用哪個版本?Python2與Python3有何區別?Python
- 強大好用的shell之shell命令
- Shell命令