linux 常見命令總結
常見命令都可以直接在terminal下通過man列出幫助資訊,如:man ls
1. ls
列出檔案和資料夾。
ls * # 列出所有檔案
ls ../../rtl/ #列出指令路徑下的檔案
ls -la ~/ #列出home路徑下的所有檔案(包括隱藏檔案)
運用舉例:
ls ../../rtl/* > rtl.lst # 將命令輸出儲存到一個新建的list文字檔案中,
# 可以用於生成include.f等模擬rtl列表檔案
ls ../../lib/* >> rtl.lst
說明: “〉”表示新建一個檔案rtl.lst, 並將輸出重定向至該新建檔案
“>>”表示將命令的輸出附加到已存在的文字檔案rtl.lst中
其他基本命名,如cd,mkdir,rm等暫不說明。
2. touch
生成一個空的新檔案
3. cat
在terminal顯示文字檔案內容
運用舉例:
cat a.txt >> b.txt #將a.txt檔案內容附加到b.txt檔案中
4. find
搜尋指定路徑下與表示式匹配的檔案
find ./ -iname "*_top.v" #在當前路徑以及子路徑下搜尋名字為*_top.v的檔案
5. alias
類似於為指定命令指定一個快捷鍵
alias ... "cd ../../../" #指定“...”等價於cd ../../../命令
建議:
home路徑下建立一個.alias隱藏檔案,常用的命令都在該檔案中建立alias
.alias
----------------
alias h 'history'
alias draw 'eog'
alias e 'emacs'
...
6. history
列出歷史命令。一般情況下還可以在home路徑下的.history中看到最近的一些操作命令。
運用舉例:
history #列出所有命令
命令輸出為:
115 cd .
116 cat ~/.alias
...
以上輸出的第一個數字為命令序號,可以通過 "!命令序號"的方式快捷呼叫,例如:!116
7. du
列出使用者磁碟佔用空間
du -hs . #看當前路徑下磁碟佔用的空間
8. df
列出所在硬碟分割槽的佔用情況
df -h . #看當前硬碟分割槽的佔用情況
9. top
動態顯示所在伺服器程序情況。可顯示那一個任務佔用了多少cpu和mem資源。類似windows的任務
管理器。
10. jobs
列出當前terminal下開啟的命令。對各命令以數字順序編號。
運用舉例:
jobs #列出命令
命令輸出為:
[1] + Running evince ./aaa.pdf
...
kill -9 %1 #強制關閉任務1的evince
11. ps
列出程序
運用舉例:
ps -ef | grep user01
說明:
1)-ef 選項表示列出所用程序
2)“|”表示管道,即將ps -ef的輸出傳遞給另一個命令,上例中是傳遞給grep命令。
3)上例命令總體的目的是列出所用的程序並將屬於使用者user01的程序過濾出來
12. tee
接收標準輸入的內容並寫出到標準輸出或檔案
運用舉例:
ps -ef | grep user01 | tee ps.lst
說明:列出所用的程序並將屬於使用者user01的程序過濾出來,結果寫入到ps.lst檔案
13. ssh
遠端登入伺服器。或在各個server中切換。
ssh aaa.bbb.com
登入後會要求輸入使用者名稱和密碼。一般情況下僅可執行terminal命令,不可開啟圖形介面工具。
運用舉例:
在伺服器1開啟一個工具後,發現系統被掛住。滑鼠和鍵盤失效。可考慮藉助另一臺伺服器2登入
伺服器1,通過ps命令找到導致系統掛住的工具,然後通過kill命令結束該命令。
14. kill
結束程序。
例如上例10中和jobs配合,或13中和ssh和ps配合。
15. echo
一般用於列印一行文字資訊,如可將環境變數或使用者設定的變數打印出來。
運用舉例:
setenv sim '/work/my_design/sim/' #設定環境變數sim
echo $sim #打印出環境變數sim
16. setenv
設定環境變數。
如上例的sim變數。
運用舉例
cd $sim #直接進入/work/my_design/sim/路徑
17. cp
複製檔案或資料夾
cp -r my_folder ../ #將my_folder 複製到../
18. ln
建立檔案或資料夾的連結
ln -s ../sim/run_nc ./ #在本路徑下建立run_nc的連結
19. chmod
改變檔案的屬性。
chmod -R uog+rwx * #將所有檔案包含子目錄下的檔案開放所有許可權。
#不建議這麼做,可調整uog和rwx選項合理開放許可權
#如chmod -R g+r 表示對同一個group開放讀許可權
20. 壓縮和解壓相關命令
tar,gunzip,unzip
tar -xvzf aaa.tar #解壓aaa.tar檔案