Linux 常用指令整理

前言

以前都是以Windows 為主,為了解決一些批次作業或簡化操作流程,也大概學了一些常用的cmd指令。後來轉換到MacOS後,在terminal反而不會下指令了

幸好MacOS與Linux同為Unix體系,指令上自然也是相近,於是花了些時間熟悉Linux常用指令,而在MacOS上都還是可以無痛使用

常用指令

  1. ps -ef即工作管理員;通常配合grep找程式,即ps -ef | grep ssh
  2. man tar,可以查看該指令的操作手冊。
    1. 思路:有問題就問人,人→man
  3. sudo netstat -anpl | grep http 查看網路狀態
  4. 設定類似Windows的環境變數ln -s ~/maven/bin/mvn /usr/bin/mvn
    1. ln指令是建立捷徑
  5. >是覆蓋;>>是追加
  6. which 可以找指令的程式路徑
    1. 比如which node,可以知道nodejs的程式路徑。
    2. 尤其在有用NVM控管node版本,路徑不會是一般的安裝路徑

常見目錄

  1. ~表示當前使用者的家目錄
  2. 臨時目錄 /tmp。系統會定期清理,重要文件勿存放在此
  3. 設定目錄 /etc
  4. 使用者程式目錄 /usr

文件操作

  1. touch 新建文件
  2. cat 檔名,讀取整份文件;要注意檔案多大,不然會撐爆記憶體
  3. rm 刪除;rm -r刪除目錄裡的子目錄,會逐一詢問。不詢問:rm -rf
  4. cp 複製;mv 移動
  5. pwd 顯示現在路徑
  6. chown 改變文件所有者 sudo chown -R user
  7. 建立深層目錄 mkdir -p mydir/test1/test2
  8. tail 從尾巴讀;head 從頭部讀
  9. more 分頁讀取;enter逐行往下讀
  10. less 可控分頁;用頁來讀取
  11. grep 搜尋關鍵字 grep -n "abc" xx文件;n是顯示行數
  12. find 查找文件
    1. find . 找當前目錄下所有文件
    2. find . -name "*.c" 找當下目錄副檔名為c的
    3. find /etc -type f或d.;f是檔案,d是目錄
  13. wc 統計字數
  14. | 管道,類似js的串連執行。命令執行完後,將結果傳到下一個繼續執行。
    1. grep "111" xx文件 | wc -l
    2. 先在xxx文件查找有111的的內容,在到wc計算行數
  15. tar 壓縮 / 解壓縮。參數基本上以首碼c建立、t顯示資訊、x解壓 為主。
    1. tar -cf xxx.tar 建立壓縮檔
    2. tar -tvf xxx.tar 顯示壓縮檔內詳細訊息
    3. tar -xf xxx.tar 解壓
    4. tar -czvf xxx.tar.gz c壓縮;z壓成gz;v 顯示詳細訊息;f產生文件,通常放在最後面;解壓就是tar -xzvf xxx.tar.gz

vim基本操作

注意,vim指令有區分大小寫!

開啟時會將所有內容存到記憶體

  1. i 輸入模式
  2. esc 退出當前模式
  3. : 下vim指令
  4. G行尾;gg 行首
  5. dd 刪除遊標當下行;u回復剛剛刪除的
  6. yy 複製當下行;p 貼上剛才複製的
  7. :wq 寫入並退出
  8. :set number 顯示行數
  9. /關鍵字 搜尋