無(wú)論你是后端程序員還是前端程序員,都避免不了和Linux打交道。Linux的命令有很多,這里僅介紹常用的20個(gè),方便快速查看,也歡迎大家作補(bǔ)充。
1.mkdir 命令
make directories的縮寫(xiě),用來(lái)創(chuàng)建目錄創(chuàng)建目錄
語(yǔ)法格式 : mkdir [參數(shù)] [目錄](méi)
常用參數(shù):
| 參數(shù) | 說(shuō)明 |
|---|---|
| -p | 遞歸創(chuàng)建多級(jí)目錄 |
| -m | 建立目錄的同時(shí)設(shè)置目錄的權(quán)限 |
參考實(shí)例:
- 在當(dāng)前目錄下,創(chuàng)建一個(gè)名為 dir 的目錄
[root@wayne:~]# mkdir dir
- 在目錄/usr/wayne下建立子目錄dir,并且設(shè)置文件屬主有讀、寫(xiě)和執(zhí)行權(quán)限,其他人無(wú)權(quán)訪問(wèn)
[root@wayne:~]# mkdir -m 700 /usr/wayne/dir
- 同時(shí)創(chuàng)建兩個(gè)目錄
[root@wayne:~]# mkdir dir1 dir2
- 遞歸創(chuàng)建目錄
[root@wayne:~]# mkdir -p dirs/subdir
2.rmdir 命令
remove directory 的縮寫(xiě),用來(lái)刪除空的目錄
語(yǔ)法格式 : rmdir [參數(shù)] [目錄名稱]
常用參數(shù):
| 參數(shù) | 說(shuō)明 |
|---|---|
| -p | 遞歸刪除指定的目錄路徑中的所有父級(jí)目錄,非空則報(bào)錯(cuò) |
| -v | 顯示命令的詳細(xì)執(zhí)行過(guò)程 |
參考實(shí)例:
- 刪除空目錄
[root@wayne:~]# rmdir dir
- 遞歸刪除指定的目錄樹(shù)
[root@wayne:~]# rmdir -p dirs/subdir/dir1
- 顯示詳細(xì)執(zhí)行過(guò)程
[root@wayne:~]# rmdir -p -v dirs/subdir/dir1
rmdir: removing directory, 'dirs/subdir/dir1/'
rmdir: removing directory, 'dirs/subdir'
rmdir: removing directory, 'dirs'
3.touch 命令
用來(lái)創(chuàng)建新的空文件,或者變已有文件的時(shí)間戳屬性
語(yǔ)法格式 : touch [參數(shù)] [文件]
常用參數(shù):
| 參數(shù) | 說(shuō)明 |
|---|---|
| -a | 改變檔案的讀取時(shí)間記錄 |
| -m | 改變檔案的修改時(shí)間記錄 |
參考實(shí)例:
- 創(chuàng)建空文件
[root@wayne:~]# touch myfile.txt
- 批量創(chuàng)建文件
[root@wayne:~]# touch myfile{1..5}.txt
[root@wayne:~]# ls
myfile1.txt myfile2.txt myfile3.txt myfile4.txt myfile5.txt
- 修改文件的access(訪問(wèn))時(shí)間
[root@wayne:~]# stat myfile.txt
File: ‘myfile.txt’
...
Access: 2023-03-07 12:15:46.931368541 +0800
Modify: 2023-03-07 12:15:46.931368541 +0800
Change: 2023-03-07 12:15:46.931368541 +0800
[root@wayne:~]# touch -a myfile.txt
[root@wayne:~]# stat myfile.txt
File: ‘myfile.txt’
...
Access: 2023-03-07 12:17:15.675569149 +0800
Modify: 2023-03-07 12:15:46.931368541 +0800
Change: 2023-03-07 12:17:15.675569149 +0800
- 修改文件的modify(修改)時(shí)間
[root@wayne:~]# stat myfile.txt
File: ‘myfile.txt’
...
Access: 2023-03-07 12:17:15.675569149 +0800
Modify: 2023-03-07 12:15:46.931368541 +0800
Change: 2023-03-07 12:17:15.675569149 +0800
[root@wayne:~]# touch -m myfile.txt
[root@wayne:~]# stat myfile.txt
File: ‘myfile.txt’
...
Access: 2023-03-07 12:17:15.675569149 +0800
Modify: 2023-03-07 12:19:08.223649598 +0800
Change: 2023-03-07 12:19:08.223649598 +0800
4.rm 命令
用來(lái)刪除一個(gè)目錄中的一個(gè)或多個(gè)文件(目錄)
語(yǔ)法格式 : rmdir [參數(shù)] [目錄名稱]
常用參數(shù):
| 參數(shù) | 說(shuō)明 |
|---|---|
| -f | 忽略不存在的文件,不會(huì)出現(xiàn)警告信息 |
| -i | 刪除前會(huì)詢問(wèn)用戶是否操作 |
| -r | 遞歸刪除 |
| -v | 顯示指令的詳細(xì)執(zhí)行過(guò)程 |
參考實(shí)例:
- 刪除前逐一詢問(wèn)確認(rèn):
[root@wayne:~]# rm -i myfile.txt
rm: remove regular empty file 'myfile.txt'?
- 直接刪除,無(wú)任何提示:
[root@wayne:~]# rm -f myfile.txt
- 遞歸刪除目錄及目錄下所有文件:
[root@wayne:~]# mkdir dirs/subdir/dir1
[root@wayne:~]# rm -rf dirs/subdir/dir1
- 刪除當(dāng)前目錄下所有文件:
[root@wayne:~]# rm -rf *
- 清空系統(tǒng)中所有的文件(<font color='red'>慎用</font>):
[root@wayne:~]# rm -rf /*
5.mv 命令
move的縮寫(xiě),用來(lái)移動(dòng)文件或?qū)ζ涓拿?/p>
語(yǔ)法格式 : mv [參數(shù)]
常用參數(shù):
| 參數(shù) | 說(shuō)明 |
|---|---|
| -i | 如果存在同名文件,則向用戶詢問(wèn)是否覆蓋 |
| -f | 覆蓋已有文件時(shí),不進(jìn)行任何提示 |
| -b | 當(dāng)文件存在時(shí),覆蓋前為其創(chuàng)建一個(gè)備份 |
| -u | 當(dāng)源文件比目標(biāo)文件新,或者目標(biāo)文件不存在時(shí),才執(zhí)行移動(dòng)操作 |
參考實(shí)例:
- 將文件file1重命名為file2:
[root@wayne:~]# mv file1 file2
- 將文件myfile移動(dòng)到目錄dir中 :
[root@wayne:~]# mv myfile /dir
- 將目錄dir1移動(dòng)目錄dir2中(目錄dir2已存在,若不存在則改名):
[root@wayne:~]# mv /dir1 /dir2
- 將srcdir目錄下的所有文件移動(dòng)到當(dāng)前目錄中:
[root@wayne:~]# mv srcdir/* .
6.cp 命令
copy的縮寫(xiě),用來(lái)復(fù)制文件或目錄
語(yǔ)法格式 : cp [參數(shù)] [文件]
常用參數(shù):
| 參數(shù) | 說(shuō)明 |
|---|---|
| -f | 若目標(biāo)文件已存在,則會(huì)直接覆蓋原文件 |
| -i | 若目標(biāo)文件已存在,則會(huì)詢問(wèn)是否覆蓋 |
| -r | 遞歸復(fù)制文件和目錄 |
| -d | 當(dāng)復(fù)制符號(hào)連接時(shí),把目標(biāo)文件或目錄也建立為符號(hào)連接,并指向與源文件或目錄連接的原始文件或目錄 |
| -l | 對(duì)源文件建立硬連接,而非復(fù)制文件 |
| -s | 對(duì)源文件建立符號(hào)連接,而非復(fù)制文件 |
參考實(shí)例:
- 復(fù)制目錄:
[root@wayne:~]# cp -r dir1 dir2/
- 將文件srcfile 復(fù)制成文件dstfile:
[root@wayne:~]# cp srcfile dstfile
- 復(fù)制多個(gè)文件到dir目錄中:
[root@wayne:~]# cp -r file1 file2 file3 dir
- 將 /usr/wayne 目錄中的所有.c文件復(fù)制到目錄 dstdir 中
[root@wayne:~]# cp -r /usr/wayne/*.c dstdir
7 cat 命令
用來(lái)顯示文件的內(nèi)容
語(yǔ)法格式 : cat [參數(shù)] [文件]
常用參數(shù):
| 參數(shù) | 說(shuō)明 |
|---|---|
| -n | 對(duì)所有輸出的行數(shù)編號(hào) |
| -b | 對(duì)于空白行不編號(hào) |
| -s | 連續(xù)兩行以上的空白行,替換為一行的空白行 |
參考實(shí)例:
- 不帶行號(hào)打印文件內(nèi)容:
[root@wayne:~]# cat file
- 帶行號(hào)打印文件內(nèi)容:
[root@wayne:~]# cat -n file
8.pwd 命令
print working directory 的縮寫(xiě),用來(lái)打印工作目錄
參考實(shí)例
查看當(dāng)前工作目錄路徑:
[[root@wayne:~]# pwd
/home/wayne
9.ls 命令
list 的縮寫(xiě),用來(lái)列出指定目錄下的內(nèi)容及其相關(guān)屬性信息
語(yǔ)法格式 : ls [參數(shù)] [文件]
常用參數(shù):
| 參數(shù) | 說(shuō)明 |
|---|---|
| -a | 顯示所有文件及目錄 (包括以“.”開(kāi)頭的隱藏文件) |
| -A | 同 -a ,但不列出 “.” (當(dāng)前目錄) 及 “..” (父目錄) |
| -l | 使用長(zhǎng)格式列出文件及目錄信息 |
| -r | 將文件以相反次序顯示(默認(rèn)依英文字母次序) |
| -t | 根據(jù)最后的修改時(shí)間排序 |
| -S | 根據(jù)文件大小排序 |
| -R | 遞歸列出所有子目錄 |
參考實(shí)例:
- 查看當(dāng)前目錄中的文件
[root@wayne:~]# ls -a
- 查看當(dāng)前目錄中的所有文件 (包括開(kāi)頭為 . 的隱藏文件):
[root@wayne:~]# ls -a
- 查看文件和目錄的詳細(xì)信息:
[root@wayne:~]# ls -l
- 查看根目錄(/)下的所有文件:
[root@wayne:~]# ls /
- 列出當(dāng)前工作目錄下所有名稱是 “s” 開(kāi)頭的文件 :
[root@wayne:~]# ls -ltr s*
- 列出 /bin 目錄下的所有目錄及文件的詳細(xì)信息 :
[root@wayne:~]# ls -lR /bin
- 列出當(dāng)前工作目錄下所有文件及目錄并以文件的大小進(jìn)行排序 :
[root@wayne:~]# ls -AS
10.cd 命令
change directory的縮寫(xiě),用來(lái)切換到指定目錄
語(yǔ)法格式 : cd [參數(shù)] [目錄名]
常用參數(shù):
| 參數(shù) | 說(shuō)明 |
|---|---|
| - | 返回上次所在的目錄 |
| ~ | 切換至當(dāng)前用戶目錄 |
| .. | 切換到上一層目錄 |
參考實(shí)例:
- 當(dāng)前工作目錄切換到dir目錄
[root@wayne:~]# cd dir
- 切換到當(dāng)前用戶目錄:
[root@wayne:~]# cd ~
- 切換到上一級(jí)目錄:
[root@wayne:~]# cd ..
- 切換到上兩級(jí)目錄:
[root@wayne:~]# cd ../..
- 切換到根目錄:
[root@wayne:~]# cd /
———————————————————————————————
碼字不易,點(diǎn)個(gè)贊再走吧!也歡迎私信,一起交流!