前言:此文章爲觀看tony老師的linux視頻整理而來,整理做自己查閱用,如侵必刪
liunx命令格式:
命令 [選項] [參數]
注意:個別命令使用不遵循此格式
當有多個選項時,可以寫在一起
簡化選項與完整選項:-a 等於 --all
顯示當前所在位置:pwd
切換目錄:cd [目標目錄]
簡化操作
cd ~ 進入當前用戶的家目錄 cd
cd - 進入上次目錄
cd .. 進入上一級目錄
cd . 進入當前目錄
查詢目錄中內容:ls [選項] [文件或目錄]
選項:-a 顯示所有文件,包括隱藏文件
-l 顯示詳細信息
-d 查看目錄屬性
-h 人性化顯示文件大小
-i 顯示inode
注: -rw-r--r--
- 代表文件類型( - 文件 d 目錄 l 軟連接文件)(不止這三種,其他爲系統文件或硬件文件,不需要掌握)
剩下的三個爲一組,代表用戶的操作權限,第一組爲u所有者的操作權限,第二組爲g所屬組,第三組爲o其他人
r讀 w寫 x執行
Ps: -h 通常與 -l 一起使用,單獨使用 -h 沒有作用
建立目錄:mkdir -p [目錄名]
-p 遞歸創建
刪除空目錄:rmdir [目錄名]
刪除文件或目錄:rm -rf [文件或目錄]
選項:-r 刪除目錄
-f 強制
複製:cp [選項] [原文件或目錄] [目標目錄]
選項:-r 複製目錄
-p 連帶文件屬性複製
-d 若原文件是鏈接文件,則複製鏈接屬性
-a 相當於 -pdr
注:-p 及 -a 不能連帶inode一起復制 inode是獨一無二的,只能通過鏈接
剪切或改名:mv [原文件或目錄] [目標目錄]
注:mv命令操作目錄不需要 -r
鏈接:ln -s [原文件] [目標文件]
選項: -s 創建軟鏈接
軟鏈接和硬鏈接的區別:
硬鏈接特徵:
1.擁有相同的i節點的存儲block塊,可以看做是同一個文件
2.可通過i節點識別(相同i節點)
3.不能跨分區(相同block塊當然不能跨分區)
4.不能針對目錄使用
5.刪除原文件該鏈接仍能使用
軟鏈接特徵:
1.類似Windows快捷方式,刪除原文件後鏈接不可以使用
2.軟鏈接擁有自己的i節點和block塊,但數據塊中只保存原文件的文件名和i節點號,並沒有實際的數據文件
3.lrwxrwxrwx l代表軟鏈接,軟鏈接的文件權限都是777,但是具體操作權限由原文件確定
4.修改任意文件,另一個都改變(硬鏈接也一樣)
5.可以針對目錄使用
注意!!!創建軟鏈接一定要使用絕對路徑!!!
文件搜索命令
locate [文件名]
#在後臺數據庫中按文件名搜索,搜索速度更快
/var/lib/mlocate
#locate命令所搜索的後臺數據庫
updatedb
#更新數據庫
注:touch命令
touch命令通常用來創建新的空文件,也可以用來把已存在文件的時間標籤更新爲系統當前的時間(默認方式)
後一種功能不常用,不在此多介紹。
注:locate 的搜索配置文件 爲 /etc/updatedb.conf,裏面配置了locate命令的搜索範圍,whereis和which命令也同樣遵守這個配置文件。
搜索命令的命令:whereis [命令名]
#搜索命令所在路徑及幫助文檔所在位置
選項:-b 只查找可執行文件
-m 只查找幫助文件
which 類似於whereis但是which不會顯示幫助文檔所在位置,會額外顯示命令的別名。
注:whereis和which命令都只能查linux系統命令,不能查shell內置的命令
linux環境變量
find [搜索範圍] [搜索條件]
#需要避免大範圍搜索,會非常耗費系統資源
#find是在系統當中搜索符合條件的文件名。如果需要匹配,使用通配符匹配,通配符是完全匹配
linux的通配符
* 匹配任意內容
?匹配任意一個字符
[] 匹配任意一個括號內的字符
find /root -iname install.log
#不區分大小寫
find /root -user root
#按照所有者搜索
find /root -nouser
#查找沒有所有者的文件(用於查找垃圾文件,外來文件(U盤和光盤)和內核產生的文件(proc和sys目錄下))
find /var/log/ -mtime +10
#查找10天前修改的文件
# -10 10天內修改的文件
# 10 10天當天修改的文件
# +10 10天前修改的文件
# atime 文件訪問時間
# ctime 改變文件屬性時間
# mtime 修改文件內容時間
find . -size 25k
#查找文件大小是25KB的文件
# -25k 小於25KB的文件
# 25k 等於25KB的文件
# +25k 大於25KB的文件
注意:搜索MB單位爲大寫M,搜索KB爲小寫k,不寫默認單位爲數據塊
find . -inum 262422
#查找i節點是262422的文件
find /etc -size +20k -a -size -50k
#查找/etc/目錄下,大於20KB並且小於50KB的文件
-a and 邏輯與,兩個條件都滿足
-o or 邏輯或,兩個條件滿足一個即可
find /etc -size +20k -a -size -50k -exec ls -lh {} \;
#查找/etc、目錄下,大於20KB並且小於50KB的文件,並顯示詳細信息
#-exec/-ok 命令{} \;對搜索結果執行操作
字符串搜索命令:grep [選項] 字符串 文件名
#在文件當中匹配符合條件的字符串
選項:-i 忽略大小寫
-v 排除指定字符串
注:如果需要匹配,使用正則表達式匹配,屬於包含匹配
幫助命令
man [命令]
#獲取指定命令的幫助
小技巧:因爲幫助文檔過於長,所以我們常常需要對文檔內容進行搜索,假如我們需要搜索-d,則輸入/-d即可
壓縮文件
.zip格式壓縮
zip [壓縮文件名] [原文件]
#壓縮文件
zip -r [壓縮文件名] [目錄]
#壓縮目錄
unzip [壓縮文件]
#解壓縮.zip文件
注意:壓縮目錄時不要寫絕對路徑,否則會連同路徑一起壓縮進壓縮文件
.gz格式壓縮
gzip [原文件]
#壓縮爲.gz格式的壓縮文件,原文件會消失 ,壓縮文件會以原文件名命名,加.gz後綴
gzip -c [原文件] > [壓縮文件]
#壓縮爲.gz格式,原文件保留
gzip -r [目錄]
#壓縮目錄下所有的子文件,但是不能壓縮目錄
gzip -d [壓縮文件] / gunzip [壓縮文件]
#解壓縮.gz文件(解壓後以該壓縮文件名命名新文件)
.bz2格式壓縮
bzip2 [原文件]
#壓縮爲.bz2格式,不保留原文件
bzip2 -k [原文件]
#壓縮之後保留源文件(注意與gzip區分)
注意:.bzip2不能壓縮目錄
bzip2 -d [壓縮文件] / bunzip [壓縮文件]
#解壓縮,-k保留壓縮文件
打包命令:tar -cvf [打包文件名] [原文件]
選項:-c 打包
-v 顯示過程
-f 指定打包後的文件名
tar -xvf [打包文件名]
選項:-x 解打包
tar -zcvf [壓縮包名] [原文件]
選項:-z 壓縮爲.tar.gz格式
-j 壓縮爲.tar.bz2格式
tar -ztvf [壓縮包名]
選項:-t 查看壓縮包內容
tar -zxvf [壓縮包名]
#解壓縮.tar.gz
tar -jxvf [壓縮包名]
#解壓縮.tar.bz2
注:以上兩種壓縮可以同時壓縮多個文件和目錄
關機和重啓命令
shutdown [選項] [時間]
選項:-c 取消前一個關機命令
-h 關機 (halt / poweroff / init 0)(這三個不安全)
-r 重啓 (reboot)
掛載命令
mount
#查詢系統中已經掛載的設備
mount -a
#依據配置文件/etc/fstab的內容,自動掛載
mount [-t文件系統] [-o特殊選項] [設備] [文件名] [掛載點]
選項:-t 文件系統:假如文件系統類型類指定掛載的類型,可以ext3、ext4、iso9660(光盤)等文件系統
-o 特殊選項:可以指定掛載的額外選項
umount [設備文件名或掛載點]