檢視python
一般伺服器會預裝Python
Linux which指令 which指令會在環境變量$PATH設定的目錄裡查找符合條件的檔案。
通過which 指令檢視這個指令的路徑在哪裡
cd 到/usr/bin 檔案夾下面,這裡面都是可執行檔案
/bin目錄放置的是最基本的一些指令的可執行檔案度,比如cp、mv、mkdir、chmod、chown等等知;
/usr下面也有一個bin目錄:/usr/bin,它裡面的檔案也是一些指令的可執行檔案;
如果是使用者自内己容安裝的軟體,軟體的主程式檔案就會在/usr/local/bin這個目錄裡面(或者是使用者自己指定的安裝目錄,比如/usr/local/apache/bin)如/usr/local/apache/bin)。
Linux ls指令 通過 ls 檢視
ls python*
ls -al python*
發現裡面有Python2.7和Python3.6
Anaconda3安裝
為了友善python 多環境的使用,我們使用Anaconda3建立多個Python運作環境
anaconda3官方下載下傳位址 官網的比較慢
anaconda3清華源下載下傳 選擇自己想要下載下傳的版本,将網站位址和檔案名拼接即可。使用wget指令下載下傳,先下載下傳到/home/xt檔案夾下面
wget -P /home/xt https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2021.11-Linux-x86_64.sh --no-check-certificate
需要加上不檢查證書的參數
在下載下傳的檔案夾下面運作這個腳本檔案
anaconda的具體版本号自己更改
sh Anaconda3-2021.11-Linux-x86_64.sh --python3
linux 中bash和sh的差別
sh Anaconda3-<對應的版本号>-Linux-x86_64.sh – python3
bash Anaconda2-2019.10-Linux-x86_64.sh – python2
回車繼續,閱讀他的license,一路enter,然後yes 同意
然後你可以修改他的安裝路徑,我這裡安裝在/home/xt/anaconda3下面
初始化輸入yes,然後你可以重開一個終端讓它生效。
設定環境變量
将conda 設定到環境變量,以便多使用者使用
export指令詳解
借用一張圖(來自javascript:void(0))
環境變量啟動過程:
指令 “PATH=$PATH:路徑”可以把這個路徑加入環境變量,但是退出這個指令行就失效了。要想永久生效,需要把這行添加到環境變量檔案裡。有兩個檔案可 選:“/etc/profile”和使用者主目錄下的“.bash_profile”,“/etc/profile”對系統裡所有使用者都有效,使用者主目錄下 的“.bash_profile”隻對這個使用者有效。
使用export指令寫到/etc/profile檔案中末尾(vim 修改,按 i 進入編輯模式)
#Anaconda3
export PATH=/home/使用者名(檔案夾)/anaconda3/bin:$PATH (改成自己的conda安裝檔案夾)
Vim 退出
按ESC鍵 跳到指令模式,然後:
:w 儲存檔案但不退出vi
:w file 将修改另外儲存到file中,不退出vi
:w! 強制儲存,不推出vi
:wq 儲存檔案并退出vi
:wq! 強制儲存檔案,并退出vi
q: 不儲存檔案,退出vi
:q! 不儲存檔案,強制退出vi
:e! 放棄所有修改,從上次儲存檔案開始再編輯
最後重新載入配置檔案,輸入如下指令
source /etc/profile
安裝anaconda後,每次打開Linux系統的終端會自動激活base環境
conda配置裡面設定取消自動激活base環境:
conda config --set auto_activate_base false
conda 基本指令(建立環境等)
更新
conda update conda
conda update anaconda
conda 指令
conda create -n xxxx python=3.7 #建立python3.7的xxxx虛拟環境
conda activate xxxx #開啟xxxx環境
conda deactivate #關閉環境
conda env list #顯示所有的虛拟環境
conda info --envs #顯示所有的虛拟環境
conda install #在那個環境下執行這個指令,這個包就會安裝到哪裡
建立環境,一路yes即可
檢視自己已有的虛拟環境
進入crawler環境,下載下傳lxml包到虛拟環境crawler中
有時候覺得下載下傳慢的時候,給conda 添加國内鏡像源
添加清華鏡像源
# 添加清華鏡像源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
顯示安裝通道
conda config --set show_channel_urls yes
使用虛拟環境crawler運作Python腳本
随便寫一個py檔案 ceshi.py
for i in range(100):
print(i)
通過xftp軟體,将本地檔案拖到linux指定的檔案夾下
可以直接像在本地一樣運作腳本,但是關掉這個終端之後,就停止運作了,當然我們這裡的測試代碼也簡單,跑完就結束了。
python /home/xt/codePy/ceshi.py
要想自己的腳本一直保持運作(除非他自己運作完畢)
Linux nohup 指令
nohup python /home/xt/codePy/main.py
我這裡運作另一個複雜的Python代碼(會一直運作,這裡就不放代碼了),然後退出,關閉目前shell
重新開一個shell,查找Python的運作程序
查找指定程序格式:(通過如下指令檢視自己的代碼是否還在運作)
ps -ef | grep 程序關鍵字(python這裡可以寫)
Linux kill指令 我們可以殺掉指定程序main.py 28531程序
kill -9 28531
指定自己的日志輸出檔案,友善以後檢視日志(友善找到自己代碼的bug所在)
nohup python -u /home/xt/codePy/main.py > /home/xt/codePy/main.log 2>&1 &
-u 就是指定實時的日志輸出(是python 指令的參數),而 & 符号是使程式在背景運作,一邊運作還可以一邊檢視日志輸出檔案(是nohup的指令參數),這裡的 /home/xt/codePy/main.log就是我們的日志輸出檔案。
- 0 – stdin (standard input,标準輸入)
- 1 – stdout (standard output,标準輸出)
- 2 –stderr (standard error,标準錯誤輸出)
References:
- https://zhidao.baidu.com/question/815292475384635132.html