自己整理的一些命令,有些簡單常用就是記不住漱牵,有些不太常用但很有用夺蛇,一并在此記錄,以后也會更新酣胀。
沒什么邏輯刁赦,比較亂,只當記錄闻镶。
1. 鏈接CUDA:
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64
2. CUDA報錯
Q: Couldn't open CUDA library libcupti.so.9.0. LD_LIBRARY_PATH: /usr/local/cuda-9.0/lib64
解決方法: export LD_LIBRARY_PATH=/usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
3. Linux 查看文件大小
顯示文件大猩趼觥:
$ du -sh * | sort -n
顯示磁盤情況:
$ df -h
統(tǒng)計當前目錄下文件的個數(shù)(不包括目錄):
$ ls -l | grep "^-" | wc -l
統(tǒng)計當前目錄下文件的個數(shù)(包括子目錄):
$ ls -lR| grep "^-" | wc -l
查看某目錄下文件夾(目錄)的個數(shù)(包括子目錄):
$ ls -lR | grep "^d" | wc -l
命令解析:
ls -l
長列表輸出該目錄下文件信息(注意這里的文件是指目錄、鏈接儒溉、設備文件等)宦焦,每一行對應一個文件或目錄,ls -lR是列出所有文件,包括子目錄波闹。
grep "^-"
過濾ls的輸出信息酝豪,只保留一般文件,只保留目錄是grep "^d"精堕。
wc -l
統(tǒng)計輸出信息的行數(shù)孵淘,統(tǒng)計結果就是輸出信息的行數(shù),一行信息對應一個文件歹篓,所以就是文件的個數(shù)瘫证。
4. Anaconda 更換源:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
恢復官方源:
conda config --remove-key channels
5. conda 環(huán)境
source activate py36 (py36是個環(huán)境名)
退出環(huán)境
source deactivate
6. 對于解壓多個.tar.gz文件的,用下面命令:
for tar in *.tar.gz; do tar xvf $tar; done
7. 指定GPU
export CUDA_VISIBLE_DEVICES=1
8. 設置文件權限
例如庄撮,ssh用戶是qinuxman,我不想它訪問/root目錄及下面的文件和目錄背捌,那么我就這樣設置
setfacl -R -m u:qinuxman:- /root
-R 是遞歸的意思,-m就是設置和修改的意思洞斯,u就是user的意思毡庆,冒號后面是用戶名又一個冒號后面是權限,-表示沒有任何權限 /root是要設置的目錄
如果要給它讀權限烙如,把-替換成r就可以了么抗,還有rwx需要什么就給什么
設置好以后,ll看權限的時候亚铁,文件權限后面有個+號蝇刀,表示這個文件設置了ACL規(guī)則,使用
getfacl /root
命令查看/root目錄的ACL規(guī)則詳情徘溢。
要刪除ACL規(guī)則就
setfacl -b /root
setfacl -R -m u:usrname:- /root ##-代表無權限吞琐,rwx為所有權限 /root 代表要設置的目錄
9. pip使用清華鏡像加速:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/
10. 終端配色代碼:
把下面的命令直接復制粘貼在 ./bashrc 文件中即可。
# set color options for terminal
export CLICOLOR=1
PS1="\[\e[32;1m\][\[\e[33;1m\]\u\[\e[31;1m\]@\[\e[33;1m\]\h \[\e[36;1m\]\w\[\e[32;1m\]]\[\e[34;1m\]\$ \[\e[0m\]"
unset LS_COLORS
11. pip 升級包
pip install --upgrade pip
12. Vim查找
在normal模式下按下 / 即可進入查找模式甸昏,輸入要查找的字符串并按下回車顽分。
Vim會跳轉到第一個匹配。 按下 n 查找下一個施蜜,按下 N 查找上一個。 Vim查找支持正則表達式雌隅,例如 /vim$ 匹配行尾的 "vim
13. 在linux下執(zhí)行sh文件時提示下面信息:
-bash: ./xx.sh: Permission denied
解決:
chmod 777 xx.sh
14. 通用
# -*- coding: utf8 -*-
15. 查看GPU信息
watch --color gpustat
watch -n 1 gpustat -n 后加數(shù)字,表示刷新速度(秒)
16. 快速輸出環(huán)境包
pip freeze > requirements.txt # 輸出本地包環(huán)境至文件
pip install -r requirements.txt # 根據(jù)文件進行包安裝
17. jupyter 清除輸出:
from IPython.display import clear_output
clear_output(wait = True)
18. 檢測設備信息:(gpu, cpu)
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
19. 建立軟鏈接飒责,
相當于把原目標文件夾復制一份到 目標文件夾
ln -s 源文件 目標文件颁褂。
有創(chuàng)建就有刪除
rm -rf symbolic_name 注意不是rm -rf symbolic_name/
來自 https://www.cnblogs.com/xiaochaohuashengmi/archive/2011/10/05/2199534.html
20. jupyter中添加conda虛擬環(huán)境
首先安裝ipykernel
在terminal下執(zhí)行命令行:
conda install ipykernel
在虛擬環(huán)境下創(chuàng)建kernel文件
在terminal下執(zhí)行命令行:
conda install -n 環(huán)境名稱 ipykernel
比如我的虛擬環(huán)境叫python27(后面舉例都默認這個虛擬環(huán)境),那么我的就是:conda install -n python27 ipykernel
激活conda環(huán)境
在terminal下執(zhí)行命令行:
windows版本:source activate 環(huán)境名稱 我的命令是:source activate python27
linux版本:source activate 環(huán)境名稱我的命令是:activate python27
將環(huán)境寫入notebook的kernel中
python -m ipykernel install --user --name 環(huán)境名稱 --display-name "在jupyter中顯示的環(huán)境名稱"
這里引號里面的名稱自己可以隨便起检盼,用于在jupyter里面做標識肯污,這里我仍然在jupyter里面叫python27,所以我的命令是:
python -m ipykernel install --user --name python27 --display-name "python27"
打開notebook服務器
在terminal下執(zhí)行命令行
jupyter notebook
來自 https://blog.csdn.net/u014665013/article/details/81084604
21. conda安裝 opencv3
conda install -c https://conda.binstar.org/menpo opencv3
22. Linux掛載硬盤
查看硬盤信息命令:fdisk -l
查看掛載后的信息:df -h
新硬盤的話,首先要格式化:
sudo mkfs -t ext4 /dev/sdb
再掛載: /xxx/ 為新建的要掛載的文件夾
sudo mount /dev/sdb /xxx/
df -h 查看一下蹦渣,硬盤已經(jīng)掛載上了哄芜。
23. 查看硬盤讀寫:
- 命令 iotop(需要root)
- 查看硬盤讀寫信息:
iostat -x -m sda1 sdb1 1 2
查看sda1 和sda2 硬盤負載信息,每1秒輸出一次柬唯,共輸出2次认臊。
參數(shù):
-c 僅顯示CPU統(tǒng)計信息.與-d選項互斥.
-d 僅顯示磁盤統(tǒng)計信息.與-c選項互斥.
-k 以K為單位顯示每秒的磁盤請求數(shù),默認單位塊.
-p device | ALL
與-x選項互斥,用于顯示塊設備及系統(tǒng)分區(qū)的統(tǒng)計信息.也可以在-p后指定一個設備名,如:
# iostat -p hda
或顯示所有設備
# iostat -p ALL
-t 在輸出數(shù)據(jù)時,打印搜集數(shù)據(jù)的時間.
-V 打印版本號和幫助信息.
-x 輸出擴展信息.
輸出的含義:
avg-cpu段:
%user: 在用戶級別運行所使用的CPU的百分比.
%nice: nice操作所使用的CPU的百分比.
%sys: 在系統(tǒng)級別(kernel)運行所使用CPU的百分比.
%iowait: CPU等待硬件I/O時,所占用CPU百分比.
%idle: CPU空閑時間的百分比.
Device段:
tps: 每秒鐘發(fā)送到的I/O請求數(shù).
Blk_read /s: 每秒讀取的block數(shù).
Blk_wrtn/s: 每秒寫入的block數(shù).
Blk_read: 讀入的block總數(shù).
Blk_wrtn: 寫入的block總數(shù).
24. 服務器之間傳遞文件:
Rsync 它比scp更強大,支持“不覆蓋”原目錄
例子:rsync -avz --progress /root/client/ root@202.112.23.12:/home/work/
//將本機的/root/client/拷貝至遠程的202.112.23.12:/home/work/目錄锄奢,--progress可以查看拷貝的過程
例子:rsync -avzu --progress /root/client/ root@202.112.23.12:/home/work/ //u選項失晴,指定不覆蓋原目錄內(nèi)容
升級jupyter lab
conda update jupyter_core jupyter_client