Linux常見命令

  • 2020 年 3 月 11 日
  • 筆記

Linux的命令筆者就老是記不住,一旦要用到的時候就各種找,所以這裡列出學習過程中所遇到的,方便回看。列出的命令及其選項是筆者使用過的, 並不是完整的內容,詳情可 Linxu命令大全

一. 常見快捷鍵

Tab:自動補全  ^ + S:停止  ^ + Q:恢復  ^ + C:中斷  ^ + L:清屏  ^ + A:光標移到行頭(輸入命令中)  ^ + E:光標移到行尾(輸入命令中)  ^ + Z:後台掛起任務

二. 命令的格式

命令名稱 [命令參數] [命令對象]

三. 其他

1. 輸出重定向

>  保存到文件  >> 追加到文件

2. 管道

命令1 | 命令2 |命令n:將前一條命令執行結果通過標準輸出送給後一命令作為輸入數據

3. 文件類型

- :普通文件  d :目錄  l :連接文件  b :設備塊    黑色背景命令行狀態下  白色:普通文件  藍色:目錄  綠色:可執行文件  紅色:壓縮文件  黃色:設備文件  淺藍色:鏈接文件

四. 工作目錄切換

1. cd

cd    進入用戶主目錄  cd ~  進入用戶主目錄  cd -  返回本次操作前的目錄  cd .. 返回上級目錄  cd /  進入根目錄

2. ls

-C:多列顯示文件及目錄,默認  -a:顯示所有文件及目錄,包括隱藏文件  -l:詳細顯示文件及目錄,簡化命令 ll

3. pwd

顯示當前目錄的絕對目錄

五. 文件目錄管理

1. touch

不存在則創建文件,否則更新修改時間

2. mkdir

-p:遞歸創建目錄  -m:創建目錄賦予權限  名字用空格隔開表示創建多個同級目錄  

3. cp [選項] [源文件/目錄] [目的目錄]

# 最後一個一定是目的目錄,前面的都是需要複製的  -r:遞歸處理  

4. mv [選項] [源文件/目錄] [目的目錄]

-i:文件存在覆蓋前詢問  改名:mv file1 file2  移動:mv file1 /opt  

5. rm

-r:遞歸處理  -f:強制刪除文件或目錄  -i:刪除前詢問  

6. chmod

u:文件的擁有者  g:同組  o:其他以外的人  a:三者皆是    +:增加權限  -:取消權限  =:唯一設定權限    -R:遞歸處理    # 更改權限  chmod +x helloWorld.sh  

六. 文本文件編輯命令

1. cat

-n:顯示行號    cat file1 標準輸出中顯示  cat file1 file2 同時顯示兩個文件  cat file1 file2 > file3 將前二者合併到file3中  

2. more

Space:翻屏  Enter:下一行  b:回退一行/一屏  =:當前行號  v:用vim打開當前內容  Q:退出more命令  H:顯示幫助  

顯示文頭    head +100 顯示頭部100行  

4. tail

顯示文末    tail +100 file1 從100行到文末  tail -50  file1 從文末開始算顯示50行  

5. wc

-l 統計行數  -w 統計字數  -c 統計位元組數    wc -l file1 統計行數  

6. stat

-t:簡介輸出  -f:顯示文件系統狀態  默認:顯示文件狀態  

7. diff

顯示結果中:a、b、c 分別表示添加、刪除、修改  這些字母前後分別表示二者文件不同的行號  

七. 打包壓縮與搜索命令

1. find [搜索範圍] [匹配條件]

find ./ -name file.txt  find ./ -size +100000K  

2. grep [選項] [指定串] [文件]

-a 文本方式搜索  -n 輸出行號  -v 反向搜索  

3. tar

這裡要說明一點:打包和壓縮是不同的概念。打包是將多個文件變成一個文件,壓縮則是將大文件壓縮成小文件,通常只支持對一個文件壓縮,所以我們得先將多個文件打包成一個總文件才能進行壓縮    -c:建立新備份文件(類似於另存為)  -v:顯示指令執行過程  -x:還原備份文件  -t:列出備份文件列表  -f:取名,一般自行取.tar結尾  -z:gzip壓縮或ungzip,取名時應.tar.gz    tar -zcvf file.tar.gz file 打包後壓縮  tar -zxvf file.tar.gz      解壓縮解包  tar -ztvf file.tar.gz      顯示內容列表  

八. 系統工作命令

1. ps

-e:顯示所有進程  -f:顯示UID,PID,PPID    ps -f  UID         PID   PPID  C STIME TTY          TIME CMD  howl      22537  22527  0 14:49 pts/0    00:00:00 bash  howl      23720  22537  0 15:04 pts/0    00:00:00 ps -f    常配合grep使用  ps -ef | grep bash :找出帶有bash行的進程  

2. kill

殺死指定進程:指定PID  

3. clear

清屏  

4.jobs、bg、fg

jobs:顯示當前暫停的進程  bg N:使第N個任務在後台運行  fg N:使第N個任務在前台運行  不帶數字,默認最後一個任務  

5. reboot、shutdown、who

reboot:重啟  shutdown:關機  who:查看在線用戶    # 關機操作  who:先查看哪些用戶在線  shutdown +10 "十分鐘後將關機":通知其他用戶關機信息  

6. wget

-b:後台運行  -P:下載到指定文件(大寫)    # 後台運行指定目錄file中  wget -bP file http://download.redis.io/releases/redis-5.0.5.tar.gz  

7. rpm、yum

rpm:軟件包管理,其包名以.rpm結尾,使用rpm可安裝查詢卸載軟件,缺點與依賴關係複雜  yum:基於rpm包管理,自動下載依賴並安裝rpm包    rpm:  -a:顯示已經安裝的軟件包  -q:查詢一個包是否已經安裝  # 查詢指定軟件包是否安裝  rpm -qa | grep screen    yum:  -y:所有提問回答yes  install:安裝rpm軟件包  update:更新rpm軟件包  check-update:檢查是否有可用的更新rpm軟件包  remove:刪除指定的rpm軟件包  

8. su、su – 、sudo

su:切換root,需要知道root密碼  su - :切換root,連shell環境也切換了  sudo:運行已授權用戶以超級用戶或者其它用戶的角色運行一個命令  

9. netstat

n:不DNS輪詢,顯示IP  t:顯示TCP端口  u:顯示UDP端口  l:僅顯示套接字  p:顯示進程標識符和程序名稱    # 查看80端口  netstat -ntp | grep 80  

10. firewall-cmd

--query-port=<端口號>/<protocol>:查詢指定端口  --add-port=<端口號>/<protocol>:開放端口  --remove-port=<端口號>/<protocol>:關閉端口    --zone=public:作用域  --permanent:永久生效  --reload:重啟防火牆      # 查詢是否開啟  firewall-cmd --zone=public --query-port=80/tcp    # 開啟防火牆端口  firewall-cmd --zone=public --add-port=80/tcp --permanent