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:顯示幫助
3. head
顯示文頭 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