查詢目錄中的內(nèi)容:ls
ls -a :顯示所有文件,包括隱藏文件
ls -l :顯示詳細(xì)信息亭罪,也可寫作 ll
ls -d :查看目錄屬性
ls -h :人性化顯示文件大小
ls -i :顯示inode
這些命令不加文件默認(rèn)會(huì)操作當(dāng)前文件夾下所有文件
文件處理命令
目錄處理命令:
mkdir -p [目錄名]:創(chuàng)建目錄
-p:創(chuàng)建多級(jí)目錄
mkdir -p father/son
會(huì)創(chuàng)建 father/son 兩級(jí)目錄cd :切換目錄 control+l 是清屏
cd ~ :進(jìn)入用戶的home目錄
cd - :進(jìn)入上次目錄
cd .. :進(jìn)入上一級(jí)目錄
cd . :進(jìn)入當(dāng)前目錄
- pwd :輸出當(dāng)前工作目錄
rm -rf [文件或目錄]:強(qiáng)制刪除目錄
-
cp [選項(xiàng)] [原文件或目錄] [目標(biāo)目錄] :復(fù)制
cp -r [原文件或目錄] [目標(biāo)目錄] : 復(fù)制目錄
cp -p [原文件或目錄] [目標(biāo)目錄] : 連帶文件屬性復(fù)制
cp -d [原文件或目錄] [目標(biāo)目錄] :若源文件是鏈接文件,則復(fù)制鏈接屬性
cp -a [原文件或目錄] [目標(biāo)目錄] :相當(dāng)于 -pdr
mv [ 原文件或目錄] [目標(biāo)目錄] :剪切
常用目錄
/ :根目錄
/lib :存放一些linux的庫函數(shù)
/mnt : 系統(tǒng)掛載目錄
/home : 普通用戶家目錄
/root : 超級(jí)用戶家目錄
/tmp :存放一些臨時(shí)文件
/dev :設(shè)備文件保存目錄,硬件信息
/ect :配置文件保存目錄
/boot : 啟動(dòng)目錄,啟動(dòng)相關(guān)目錄
/media : 掛載光盤目錄
/proc : 直接寫入內(nèi)存
/usr : 系統(tǒng)資源保存目錄
/var和/sys :用來保存內(nèi)存的掛載點(diǎn)榛泛,不可進(jìn)操作
/bin 和/sbin :用來保存系統(tǒng)目錄的 bin只有普通用戶可以用 sbin只有超級(jí)用戶可以用
鏈接命令
ln -s [原文件] [目標(biāo)文件] : 軟連接
ln [原文件] [目標(biāo)文件] : 硬鏈接
文件搜索命令
locate [文件名] :文件搜索命令
updatedb :后臺(tái)數(shù)據(jù)庫更新
1.在后臺(tái)數(shù)據(jù)庫中按文件名搜索耽梅,搜索速度更快
2.后臺(tái)數(shù)據(jù)庫是/var/lib/mlocate
3.這個(gè)數(shù)據(jù)庫不是實(shí)時(shí)更新的,每天更新一次或者執(zhí)行數(shù)據(jù)庫更新命令味混。
whereis [命令]: 搜索命令的命令
whereis -b [命令] : 只查找可執(zhí)行文件
whereis -m [命令]: 只查找?guī)椭募?/p>
which [文件名] :搜索命令所在路徑及別名
-
find [搜索范圍] [搜索條件]:文件搜索命令
1.按照文件時(shí)間搜索:
find [搜索范圍] [時(shí)間條件] n
時(shí)間條件:
atime:文件訪問時(shí)間
ctime :改變文件屬性
mtime:修改文件內(nèi)容
-n n天內(nèi)修改文件
n n天當(dāng)天修改的文件
+n n天前修改的文件
eg:
find [搜索范圍] -mtime +10
代表的意思是:在搜索范圍內(nèi)查找10天前修改的文件
2.按照文件大小搜索:
find [搜索范圍] -size nk
-nk :小于nKB的文件
nk : 等于nKB的文件
+nk :大于nKB的文件
需要注意的是:千字節(jié)是小寫k,兆字節(jié)是大寫M
eg:
find [搜索范圍] -size -25k
代表的意思是:在搜索氛圍內(nèi)查找小于25KB的文件
3.按照結(jié)點(diǎn)搜索:
eg:
find [搜索范圍] -inum 9527
意思是:在搜索范圍內(nèi)查找i節(jié)點(diǎn)是9527的文件
4.按照文件大小范圍搜索:
-a :邏輯與诫惭,兩個(gè)條件都滿足
-o:邏輯或翁锡,兩個(gè)條件滿足一個(gè)即可
eg:
find [搜索范圍] -size +20k -a -size -50k
意思是:在搜索范圍內(nèi)查找大于20kb并且小于50kb的文件
- grep [選項(xiàng)] 字符串 文件名:搜索字符串命令
選項(xiàng):
-i 忽略大小寫
-v 排除指定字符串
幫助命令
幫助命令man
man [命令] :獲取指定命令的幫助
man 的命令級(jí)別
1.查看命令的幫助
2.查看內(nèi)核可調(diào)用的函數(shù)的幫助
3.查看函數(shù)和函數(shù)庫的幫助
4.查看特殊文件的幫助
5.查看配置文件的幫助
6.查看游戲的幫助
7.查看其它雜項(xiàng)的幫助
8.查看系統(tǒng)管理員可用的命令幫助
9.查看和內(nèi)核文件相關(guān)文件的幫助man -f [命令]:查看命令有幾個(gè)等級(jí)幫助
man -k [命令]:查看和命令相關(guān)的所有幫助
按q退出man界面
其它幫助命令
[命令] --help :獲取命令選項(xiàng)的幫助
help [shell內(nèi)部命令]:獲取shell內(nèi)部命令的幫助
eg:
whreris cd(確定是否是shell內(nèi)部命令)
cd 是
help cd(獲取內(nèi)部命令幫助)
- info [命令]:詳細(xì)命令幫助,會(huì)進(jìn)入一個(gè)巨大的幫助文檔
壓縮和解壓縮命令
.zip格式壓縮
zip [壓縮文件名] [源文件] :壓縮文件
zip -r [壓縮目錄名] [源目錄] : 壓縮目錄
unzip [壓縮文件] :解壓縮.zip文件
.gz格式壓縮
gzip [源文件] :壓縮為.gz格式的壓縮文件,源文件會(huì)消失
gzip -c [源文件] > [壓縮文件]:壓縮為.gz格式夕土,源文件保留
gzip -r [目錄]:壓縮目錄下所有的子文件馆衔,但是不能壓縮目錄
gzip -d [壓縮文件]:解壓縮文件
gunzip [壓縮文件]:解壓縮文件
.bz2格式壓縮
bzip2 [源文件]:壓縮為.bz2格式,不保留源文件
bzip2 -k [源文件]:壓縮之后保留源文件
bzip2 -d [壓縮文件]:解壓縮怨绣,-k保留壓縮文件
bunzip2 [壓縮文件]:解壓縮角溃,-k保留壓縮文件
.tar.gz格式壓縮(常見)
tar -cvf [打包/目錄文件名] [源文件/目錄]:打包命令
-c:打包
-v:顯示過程
-f:指定打包后的文件名其實(shí).tar.gz格式和.tar.zb2格式是先打包為.tar格式,再壓縮為.gz格式
tar -zcvf [壓縮包名.tar.gz] [源文件]:壓縮為.tar.gz格式
tar -zxvf [壓縮包名.tar.gz]:解壓縮.tar.gz格式
.tar.bz2壓縮格式(常見)
tar -jcvf [壓縮包名.tar.bz2] [源文件]:壓縮為.tar.zb2格式
tar -jxvf [壓縮包名.tar.bz2]:解壓縮.tar.zb2格式
[解壓命令] -C [目標(biāo)目錄]:將解壓文件/目錄存到目標(biāo)目錄下
tar -ztvf [壓縮包名]:查看壓縮包
關(guān)機(jī)和重啟命令
shutdown -h [時(shí)間] : 關(guān)機(jī)
shutdown -r [時(shí)間] :重啟
shutdown -c [時(shí)間]:取消前一個(gè)關(guān)機(jī)命令
[時(shí)間]可以寫now 或者具體時(shí)間
reboot:重啟
init [選項(xiàng)] :進(jìn)入系統(tǒng)運(yùn)行級(jí)別
選項(xiàng):
0 : 關(guān)機(jī)
1 :?jiǎn)斡脩?br> 2 :不完全多用戶篮撑,不含NFS服務(wù)
3 : 完全多用戶
4 :未分配
5 :圖形界面
6 :重啟runlevel:查詢當(dāng)前系統(tǒng)運(yùn)行級(jí)別
logout:退出登錄命令
其它常用命令
more:它以全屏幕的方式按頁顯示文本文件的內(nèi)容
ifconfig :查看當(dāng)前網(wǎng)卡
table鍵:系統(tǒng)命令補(bǔ)全
clear:清屏命令
cat [文件名]:查看文件
touch [文件名]:創(chuàng)建文件
data:顯示時(shí)間
cal:顯示日歷
sudo :超級(jí)用戶
su :更改用戶為root
chmod +x+r+w:添加執(zhí)行/讀/寫權(quán)限
ps:查看進(jìn)程
kill pid :結(jié)束某個(gè)進(jìn)程
掛載命令
mount : 查詢系統(tǒng)中已經(jīng)掛載的設(shè)備
mount -a :依據(jù)配置文件/etc/fstab的內(nèi)容减细,自動(dòng)掛載
mount [-t文件系統(tǒng)] [設(shè)備文件名] [掛載點(diǎn)] :加入文件系統(tǒng)類型來指定掛載的類型,可以是ext3 ext4 iso9660等文件系統(tǒng)
mount [-o 特殊選項(xiàng)] [設(shè)備文件名] [掛載點(diǎn)]:可以指定掛載的額外選項(xiàng)
mount /dev/sr0 /mnt :把光盤掛載到mnt目錄下
- umount [設(shè)備文件名或掛載點(diǎn)]:卸載命令
umount /mnt :把mnt目錄下的光盤卸載
fdisk -l:查看U盤設(shè)備文件名
mount -t vfat /dev/sdb [掛載點(diǎn)]:掛載U盤
mount -t vfat /dev/sdb /mnt :將U盤掛載到mnt目錄下
查看登錄用戶信息
w:查看登錄用戶的信息
who:查看登錄用戶名赢笨,終端和時(shí)間
last:查詢當(dāng)前登錄和過去登錄的用戶信息
lastlog:查看所有用戶的最后一次登錄時(shí)間
Shell相關(guān)命令
echo "[輸出內(nèi)容]" :輸出命令 有空格需要打引號(hào)
echo -e [選項(xiàng)] "[輸出內(nèi)容]":改變輸出格式樣式等等
選項(xiàng):
\a:輸出警告音
\b:退格鍵未蝌,也就是向左刪除鍵
\n:換行符
\r:回車鍵
\t:制表符號(hào)驮吱,就是tab鍵
\v:垂直制表符
\0nnn:按照八進(jìn)制ASCLL碼表輸出字符,其中0為數(shù)字零萧吠,nnn是三位八進(jìn)制數(shù)
\xhh:按照十六進(jìn)制ASCLL碼表輸出字符左冬,其中hh是兩位十六進(jìn)制數(shù)
\e[1;31m...\e[0m:顯示顏色vi hello.sh :寫一個(gè)腳本
sh [腳本名稱]:執(zhí)行該腳本
bash相關(guān)命令
alias:查看系統(tǒng)中所有命令的別名
alias [別名] = [原命令]:設(shè)定命令別名
unalias [別名]:刪除別名
history -c:清空歷史命令
history -w:把緩存中的歷史命令寫入歷史命令保存文件
!V叫汀:執(zhí)行上一條命令
! [字符串]:重復(fù)執(zhí)行最后一條以該字符串開頭的命令
輸出重定向
類型 | 符號(hào) | 作用 |
---|---|---|
標(biāo)準(zhǔn)輸出重定向 | [命令] > [文件] | 以覆蓋的方式又碌,把命令的正確輸出到指定的文件或設(shè)備當(dāng)中 |
標(biāo)準(zhǔn)輸出重定向 | [命令] >[文件] | 以追加的方式,把命令的正確輸出到指定的文件或設(shè)備當(dāng)中 |
標(biāo)準(zhǔn)錯(cuò)誤輸出重定向 | 錯(cuò)誤命令 2>文件 | 以覆蓋的方式绊袋,把命令的錯(cuò)誤輸出到指定的文件或設(shè)備中 |
標(biāo)準(zhǔn)錯(cuò)誤輸出重定向 | 錯(cuò)誤命令 2>>文件 | 以追加的方式,把命令的錯(cuò)誤輸出到指定的文件或設(shè)備中 |
正確輸出和錯(cuò)誤輸出同時(shí)保存 | 命令&>>文件 | 以追加的方式铸鹰,把正確和錯(cuò)誤輸出都保存到同一個(gè)文件當(dāng)中 |
輸入重定向
- wc [選項(xiàng)] [文件名]:統(tǒng)計(jì)文件中的字節(jié)癌别,單詞,行數(shù)
選項(xiàng):
-c:統(tǒng)計(jì)字節(jié)數(shù)
-w:統(tǒng)計(jì)單詞數(shù)
-l :統(tǒng)計(jì)行數(shù)
管道符
多命令順序執(zhí)行
多命令執(zhí)行符 | 格式 | 作用 |
---|---|---|
蹋笼; | 命令1展姐;命令2 | 多個(gè)命令順序執(zhí)行,命令之間沒有任何邏輯聯(lián)系 |
&& | 命令1&&命令2 | 邏輯于剖毯,當(dāng)命令1正確執(zhí)行圾笨,則才執(zhí)行命令2。當(dāng)命令1不正確執(zhí)行逊谋,則不執(zhí)行命令2 |
ll | 命令1ll命令2 | 邏輯或擂达,當(dāng)命令1執(zhí)行不正確,則命令2才會(huì)執(zhí)行胶滋。當(dāng)命令1正確執(zhí)行板鬓,則命令2不會(huì)執(zhí)行 |
* && 應(yīng)該在 | 前書寫 |
- 命令1|命令2:命令1的正確輸出作為命令2的操作對(duì)象
eg:
netstat -an | grep ESTABLISHED
-a/etc/ | more
通配符
通配符 | 作用 |
---|---|
? | 匹配任意一個(gè) |
* | 匹配0個(gè)或任意字符究恤,也就是可以匹配任何內(nèi)容 |
[ ] | 匹配中括號(hào)中任意一個(gè)字符俭令。例如:[abc]代表一定匹配一個(gè)字符,或者是a部宿,或者是b抄腔,或者是c |
[-] | 匹配中括號(hào)中任意一個(gè)字符,-代表一個(gè)范圍 例如:[a-z]代表匹配一個(gè)小寫字母 |
[^]: | 邏輯非理张,表示匹配不是中括號(hào)內(nèi)的一個(gè)字符 例如:[^0-9]代表匹配一個(gè)不是數(shù)字的字符 |
Bash中其他特殊符號(hào)
符號(hào) | 作用 |
---|---|
’ ’ | 單引號(hào)赫蛇。在單引號(hào)中所有的特殊符號(hào),如“$”和“`”都沒有特殊含義 |
\ | 轉(zhuǎn)義符涯穷。跟在\之后的特殊符號(hào)將失去特殊含義棍掐,變?yōu)槠胀ㄗ址?/td> |
# | 注釋 |
$ | 用語調(diào)用變量的值,如需要調(diào)用變量name的值時(shí)拷况,需要用$name的方式得到變量的值 |
$() | 括號(hào)里的內(nèi)容是系統(tǒng)命令作煌,在Bash中會(huì)先執(zhí)行它掘殴。 |
vim編輯器常用指令
底行模式常用指令
w:保存
q:退出
! :強(qiáng)制執(zhí)行
ls:列出編輯器當(dāng)前執(zhí)行的所有文件
n:切換到下一個(gè)文件
15:將光標(biāo)切換到第15行
/xxx:從光標(biāo)位置向后搜索,直到xxx第一次出現(xiàn)的位置
?xxx:從光標(biāo)位置向前搜索粟誓,直到xxx第一次出現(xiàn)的位置
命令模式常用指令
h:光標(biāo)左移
j :光標(biāo)下移
k:光標(biāo)上移
k:光標(biāo)右移
ctrl + f :向下翻頁
ctrl + b :向上翻頁
ctrl + d :向下翻半頁
ctrl + u :向上翻半頁
dd :刪除光標(biāo)所在行
o:在光標(biāo)所在行的下方插入一行并切換到輸入模式
yy:復(fù)制光標(biāo)所在的這一行
磁盤管理
df -l :查看磁盤分區(qū)使用狀況奏寨,僅顯示本地磁盤
df -a :查看磁盤分區(qū)使用狀況,顯示所有文件系統(tǒng)的磁盤使用情況鹰服,包含比如/proc/
df -h :查看磁盤分區(qū)使用狀況病瞳,以1024進(jìn)制計(jì)算最合適的單位顯示磁盤容量
df -H:查看磁盤分區(qū)使用狀況,以1000進(jìn)制計(jì)算最合適的單位顯示磁盤容量
df -T :查看磁盤分區(qū)使用狀況悲酷,顯示磁盤分區(qū)類型
df -t :查看磁盤分區(qū)使用狀況套菜,顯示指定類型文件系統(tǒng)的磁盤分區(qū)
df -x:查看磁盤分區(qū)使用狀況,不顯示指定類型文件系統(tǒng)的磁盤分區(qū)
du -b:以byte為單位統(tǒng)計(jì)文件大小
du -k:以KB為單位統(tǒng)計(jì)文件大小
du -m:以MB為單位統(tǒng)計(jì)文件大小
du -h:按照1024進(jìn)制以最合適的單位統(tǒng)計(jì)文件大小
du -H:按照1000進(jìn)制以最適合的單位統(tǒng)計(jì)文件大小
du -s:指定統(tǒng)計(jì)目標(biāo)
磁盤的分區(qū)
MBR分區(qū):
主分區(qū)和擴(kuò)展分區(qū)總數(shù)不能超過4個(gè)
擴(kuò)展分區(qū)最多只能有一個(gè)
擴(kuò)展分區(qū)不能直接存取數(shù)據(jù)设易,必須在擴(kuò)展分區(qū)內(nèi)部建立邏輯分區(qū)
fdisk :查看磁盤
fdisk [ 磁盤路徑]:進(jìn)入分區(qū)模式
m :分區(qū)命令詳解
GTP分區(qū)(常用逗柴,不能用于32位,X86)
parted:?jiǎn)?dòng)分區(qū)工具
help:parted幫助命令
select [磁盤名]:切換分區(qū)磁盤
mklabel:指定分區(qū)表
print:查看當(dāng)前磁盤分區(qū)類型
交互模式分區(qū):
- mkpart :創(chuàng)建一個(gè)分區(qū)顿肺,接下來跟著步驟走戏溺,注意4K對(duì)齊
命令分區(qū):
- mkpart [名稱] [位置]
mkpart test 2000 3000
- rm [分區(qū)編號(hào)]:刪除分區(qū)
磁盤的格式化
格式化(format)是指對(duì)磁盤或磁盤中的分區(qū)(partition)進(jìn)行初始化的一種操作,這種操作通常會(huì)導(dǎo)致現(xiàn)有的磁盤或分區(qū)中所有的文件被清除屠尊。格式化通常分為低級(jí)格式化和高級(jí)格式化旷祸。如果沒有特別指明,對(duì)硬盤的格式化通常是指高級(jí)格式化讼昆,而對(duì)軟盤的格式化則通常同時(shí)包括這兩者托享。
- mkfs :磁盤格式化工具
- mkfs.[格式化后文件系統(tǒng)] [區(qū)名]:格式化
mkfs.test3 /dev/sdb1
swap交換分區(qū)
Swap分區(qū)在系統(tǒng)的物理內(nèi)存不夠用的時(shí)候,把硬盤空間中的一部分空間釋放出來浸赫,以供當(dāng)前運(yùn)行的程序使用嫌吠。那些被釋放的空間可能來自一些很長(zhǎng)時(shí)間沒有什么操作的程序,這些被釋放的空間被臨時(shí)保存到Swap分區(qū)中掺炭,等到那些程序要運(yùn)行時(shí)辫诅,再從Swap分區(qū)中恢復(fù)保存的數(shù)據(jù)到內(nèi)存中。
- 步驟
1.建立一個(gè)普通的Linux分區(qū)
用之前建立的sdb6分區(qū)
2.修改分區(qū)類型的16進(jìn)制編碼
- t 輸入編碼6
- L:查看編碼的列表
- 可以看出swap分區(qū)是82 輸入82
- w 保存
3.格式化交換分區(qū)
- mkswap /dev/sdb6
4.啟用交換分區(qū)
- swapon /dev/sdb6:?jiǎn)⒂?/li>
- swapoff /dev/sdb6:停止
分區(qū)的掛載
通過mount命令掛載的分區(qū)不具有永久性涧狮,重啟掛載就會(huì)失效炕矮,可以通過編輯etc目錄下的fstab配置文件,實(shí)現(xiàn)自動(dòng)掛載
vim + /etc/fstab
配置文件:
[設(shè)備名稱] [掛載點(diǎn)] [文件系統(tǒng)類型] defaults 0 0
/dev/sdb1 /mnt/abc ext3 defaults 0 0
用戶管理
用戶和用戶組
用戶:使用操作系統(tǒng)的人
用戶組:具有相同系統(tǒng)權(quán)限的一組用戶
/etc/group:存儲(chǔ)當(dāng)前系統(tǒng)中所有用戶組信息
/etc/gshadow:存儲(chǔ)當(dāng)前系統(tǒng)中用戶組的密碼信息
/etc/passwd:存儲(chǔ)當(dāng)前系統(tǒng)中所有用戶的信息
/etc/shadow:存儲(chǔ)當(dāng)前系統(tǒng)中所有用戶的密碼信息
groupadd [用戶組名稱]:創(chuàng)建一個(gè)新的用戶組并命名
groupmod -n [信用戶組名稱] [舊用戶組名稱]:更改此用戶組名稱
groupmod -g [主編號(hào)] [組名稱]:修改組的主編號(hào)
grouped -g [主編號(hào)xxx] [組名稱n]:創(chuàng)建一個(gè)主編號(hào)為xxx者冤,組名稱為n的用戶組
groupdel [組名稱]:刪除此用戶組肤视,刪除之前要先刪用戶信息!
useradd -g [用戶組名n] [用戶名m]:在n用戶組里創(chuàng)一個(gè)m用戶
usermod -c [備注信息] [用戶名]:給用戶添加一個(gè)備注
usermod -l [新用戶名] [舊用戶名]:更改用戶名
usermod -d /home/[文件夾名] [用戶名]:為用戶創(chuàng)建一個(gè)文件夾
usermod -g [用戶組n] [用戶m(原本m沒在用戶組n中)]:將用戶m切換到n用戶組中
userdel [用戶名]:刪除用戶名
*userdel -r [用戶名]:刪除用戶名和它的相關(guān)文件
touch /etc/nologin:禁止用戶登錄服務(wù)器(除了root)
passwd -l [用戶名]:鎖定用戶
passwd -u [用戶名]:解鎖用戶
passed -d [用戶名]:清楚用戶密碼
主要組與附屬組
用戶可以同時(shí)屬于多個(gè)組
一個(gè)主要組
多個(gè)附屬組gpasswd -a [用戶名m] [附屬組名s]:將用戶m添加到附屬組s
gpasswd -d [用戶名m] [附屬組名s]:將用戶m從附屬組s刪除
newgrp [目標(biāo)附屬組] :切換目標(biāo)附屬組涉枫,加組密碼
useradd -g [主要組名稱] -G [附屬組名稱邢滑,可以寫多個(gè),逗號(hào)鏈接]:創(chuàng)建一個(gè)用戶愿汰,為其分配主要組和附屬組
gpasswd [用戶組名稱]:設(shè)置組密碼
su [其他用戶名]:切換用戶名
id [用戶名]:顯示用戶名的信息
groups [用戶名]:顯示用戶所在的所有組
chin [用戶名]:設(shè)置用戶資料困后,依次輸入用戶資料
finger [用戶名]:顯示用戶詳細(xì)資料