Linux常用命令大全(目錄、文件、壓縮、編輯與查找)
前言
學(xué)習(xí) Linux 時,最先遇到的往往不是復(fù)雜的服務(wù)部署,而是在終端里完成一些基礎(chǔ)操作:查看目錄、切換路徑、創(chuàng)建文件夾、查看日志、復(fù)制移動文件、壓縮解壓、編輯配置文件、查找文件內(nèi)容等。
這篇文章主要整理 Linux 初學(xué)階段最常用的一批命令,適合剛接觸 Linux、正在學(xué)習(xí)服務(wù)器基礎(chǔ)操作,或者需要復(fù)習(xí)常見命令用法的同學(xué)閱讀。
本文以常見 Linux 發(fā)行版的命令行環(huán)境為基礎(chǔ),目錄和文件操作主要參考 GNU Coreutils 的常見用法;不同發(fā)行版在包管理器、默認(rèn)編輯器、命令版本上可能略有差異,實際使用時以當(dāng)前系統(tǒng)環(huán)境為準(zhǔn)。
一、Linux 命令初體驗
Linux 命令通常由三部分組成:
命令 [選項] [參數(shù)]
例如:
ls -l /home
這里:
ls是命令,用來查看目錄內(nèi)容。-l是選項,表示以長格式顯示。/home是參數(shù),表示要查看的目錄路徑。
在 Linux 中,路徑分為兩類:
| 路徑類型 | 說明 | 示例 |
|---|---|---|
| 絕對路徑 | 從根目錄 / 開始寫完整路徑 | /home/user/test.txt |
| 相對路徑 | 相對于當(dāng)前所在目錄 | ./test.txt、../logs |
常見特殊路徑:
| 寫法 | 含義 |
|---|---|
. | 當(dāng)前目錄 |
.. | 上一級目錄 |
~ | 當(dāng)前用戶的家目錄 |
/ | 根目錄 |
可以先用下面兩個命令熟悉當(dāng)前位置:
pwd whoami
pwd 用來查看當(dāng)前所在目錄,whoami 用來查看當(dāng)前登錄用戶。
二、目錄操作命令
2.1ls:查看目錄內(nèi)容
ls 用來列出目錄中的文件和子目錄。如果不指定路徑,默認(rèn)查看當(dāng)前目錄。
ls
常見用法:
ls -l ls -a ls -lh ls /etc
參數(shù)說明:
| 參數(shù) | 作用 |
|---|---|
-l | 以長格式顯示文件權(quán)限、所有者、大小、修改時間等信息 |
-a | 顯示隱藏文件,Linux 中以 . 開頭的文件默認(rèn)隱藏 |
-h | 和 -l 搭配使用,讓文件大小更易讀,例如 KB、MB |
實際開發(fā)或運(yùn)維中,我最常用的是:
ls -lah
這個命令可以同時看到隱藏文件、權(quán)限和更直觀的文件大小。
2.2cd:切換目錄
cd 用來切換當(dāng)前所在目錄。
cd /usr/local
常見用法:
cd .. cd ~ cd - cd /var/log
說明:
| 命令 | 含義 |
|---|---|
cd .. | 回到上一級目錄 |
cd ~ | 回到當(dāng)前用戶家目錄 |
cd - | 回到上一次所在目錄 |
cd /var/log | 切換到指定絕對路徑 |
如果路徑中包含空格,可以使用引號:
cd "my project"
2.3mkdir:創(chuàng)建目錄
mkdir 用來創(chuàng)建目錄。
mkdir logs
如果要一次創(chuàng)建多級目錄,可以使用 -p:
mkdir -p app/logs/nginx
-p 的好處是:如果上級目錄不存在,會自動一起創(chuàng)建;如果目錄已經(jīng)存在,一般也不會因為這個目錄存在而報錯。
常見場景:
mkdir backup mkdir -p /tmp/demo/files
2.4rm:刪除文件或目錄
rm 用來刪除文件。
rm test.txt
刪除目錄時,經(jīng)常會看到:
rm -r logs
參數(shù)說明:
| 參數(shù) | 作用 |
|---|---|
-r | 遞歸刪除目錄及目錄下的內(nèi)容 |
-f | 強(qiáng)制刪除,不提示確認(rèn) |
-i | 刪除前逐個確認(rèn) |
風(fēng)險提示:
rm 是 Linux 里非常危險的命令之一,刪除后通常不會進(jìn)入回收站。尤其是下面這種命令一定要謹(jǐn)慎:
rm -rf 目錄名
建議初學(xué)階段多使用:
rm -i file.txt
或者先用 ls 確認(rèn)目標(biāo)路徑:
ls /tmp/demo rm -r /tmp/demo
如果是生產(chǎn)服務(wù)器,刪除前最好先備份,或者先移動到臨時目錄,確認(rèn)沒有問題后再真正刪除。
三、文件查看命令
3.1 cat:查看文件全部內(nèi)容
cat 可以直接輸出文件內(nèi)容。
cat application.yml
適合查看內(nèi)容較少的文件,比如配置片段、小腳本、說明文件。
常見用法:
cat test.txt cat -n test.txt
-n 可以顯示行號。
注意:如果文件非常大,不建議直接用 cat,因為會一次性刷滿終端,閱讀體驗很差。查看大文件時更推薦 more、less、head、tail。
3.2 more:分頁查看文件
more 用來分頁查看文件內(nèi)容。
more catalina.out
常用操作:
| 按鍵 | 作用 |
|---|---|
Space | 向下翻一頁 |
Enter | 向下翻一行 |
q | 退出查看 |
more 適合簡單分頁查看文件。如果系統(tǒng)支持 less,實際工作中 less 會更靈活,因為它支持前后翻動。
3.3 head:查看文件開頭
head 用來查看文件開頭內(nèi)容。默認(rèn)顯示前 10 行。
head access.log
指定行數(shù):
head -n 20 access.log
常見場景:
- 查看 CSV 文件前幾行,確認(rèn)字段格式。
- 查看日志文件開頭,確認(rèn)啟動時間。
- 查看配置文件頭部注釋。
3.4 tail:查看文件結(jié)尾
tail 用來查看文件末尾內(nèi)容。默認(rèn)顯示最后 10 行。
tail app.log
指定行數(shù):
tail -n 50 app.log
實時查看日志:
tail -f app.log
tail -f 是排查服務(wù)問題時非常常用的命令。比如啟動一個 Spring Boot 項目后,可以用它實時觀察日志輸出:
tail -f logs/app.log
如果日志一直沒有新內(nèi)容,可以按 Ctrl + C 退出。
四、復(fù)制和移動命令
4.1 cp:復(fù)制文件或目錄
cp 用來復(fù)制文件。
cp source.txt target.txt
復(fù)制到指定目錄:
cp app.log backup/
復(fù)制目錄時需要加 -r:
cp -r project project_backup
常見參數(shù):
| 參數(shù) | 作用 |
|---|---|
-r | 遞歸復(fù)制目錄 |
-i | 覆蓋前詢問 |
-v | 顯示復(fù)制過程 |
-p | 盡量保留文件屬性 |
建議復(fù)制重要文件時使用:
cp -iv config.yml config.yml.bak
這樣如果目標(biāo)文件已經(jīng)存在,會提示確認(rèn),避免誤覆蓋。
4.2 mv:移動或重命名
mv 有兩個常見作用:移動文件、重命名文件。
重命名:
mv old.txt new.txt
移動到目錄:
mv app.log logs/
移動并改名:
mv app.log logs/app-2026-05-30.log
風(fēng)險提示:
mv 如果目標(biāo)文件已存在,可能會覆蓋目標(biāo)文件。為了更安全,可以使用:
mv -i old.txt new.txt
-i 會在覆蓋前提示確認(rèn)。
五、打包和壓縮命令
Linux 中打包和壓縮經(jīng)常一起出現(xiàn),但它們不是一回事:
- 打包:把多個文件合成一個文件,例如
.tar。 - 壓縮:減少文件體積,例如
.gz。
5.1 tar:打包和解包
打包目錄:
tar -cvf logs.tar logs/
解包:
tar -xvf logs.tar
常見參數(shù):
| 參數(shù) | 作用 |
|---|---|
-c | 創(chuàng)建歸檔文件 |
-x | 解開歸檔文件 |
-v | 顯示處理過程 |
-f | 指定歸檔文件名 |
-z | 通過 gzip 壓縮或解壓 |
打包并壓縮為 .tar.gz:
tar -czvf logs.tar.gz logs/
解壓 .tar.gz:
tar -xzvf logs.tar.gz
5.2 gzip和gunzip:壓縮單個文件
壓縮文件:
gzip app.log
壓縮后會生成:
app.log.gz
解壓:
gunzip app.log.gz
注意:gzip 更常用于壓縮單個文件。如果要壓縮整個目錄,通常先用 tar 打包,再配合 gzip 壓縮,也就是 .tar.gz。
六、文本編輯命令
6.1 vi和vim簡介
vi 是 Unix/Linux 系統(tǒng)中非常經(jīng)典的文本編輯器,vim 可以理解為增強(qiáng)版的 vi,功能更豐富,使用體驗也更好。
在服務(wù)器上修改配置文件時,經(jīng)常會看到:
vi nginx.conf vim application.yml
如果只是簡單編輯配置,掌握幾個基礎(chǔ)操作就夠用了。
6.2 vim安裝
有些最小化安裝的 Linux 系統(tǒng)可能沒有自帶 vim??梢愿鶕?jù)發(fā)行版使用對應(yīng)包管理器安裝。
Debian / Ubuntu 常見寫法:
sudo apt update sudo apt install -y vim
CentOS / RHEL / Fedora 常見寫法:
sudo dnf install -y vim
舊版本 CentOS 也可能使用:
sudo yum install -y vim
如果命令不可用,需要先確認(rèn)當(dāng)前系統(tǒng)發(fā)行版和包管理器。
6.3 vim基礎(chǔ)使用
打開文件:
vim test.txt
vim 常見模式:
| 模式 | 說明 |
|---|---|
| 普通模式 | 默認(rèn)模式,用來移動光標(biāo)、復(fù)制、刪除、保存退出 |
| 插入模式 | 用來輸入文本 |
| 命令模式 | 用來執(zhí)行保存、退出、查找等命令 |
進(jìn)入插入模式:
i
退出插入模式:
Esc
保存退出:
:wq
不保存退出:
:q!
只保存不退出:
:w
查找內(nèi)容:
/keyword
常用操作總結(jié):
| 操作 | 命令 |
|---|---|
| 進(jìn)入編輯 | i |
| 退出編輯 | Esc |
| 保存退出 | :wq |
| 強(qiáng)制退出不保存 | :q! |
| 刪除當(dāng)前行 | dd |
| 復(fù)制當(dāng)前行 | yy |
| 粘貼 | p |
初學(xué) vim 最容易卡住的地方是“不知道怎么退出”。記住:先按 Esc 回到普通模式,再輸入 :wq 或 :q!。
七、查找命令
7.1 find:按條件查找文件
find 用來在目錄中按條件查找文件。
基本格式:
find 查找路徑 查找條件
按文件名查找:
find /etc -name "*.conf"
在當(dāng)前目錄查找 .log 文件:
find . -name "*.log"
按文件類型查找:
find . -type f find . -type d
說明:
| 條件 | 作用 |
|---|---|
-name | 按名稱查找 |
-type f | 查找普通文件 |
-type d | 查找目錄 |
查找并刪除要特別謹(jǐn)慎。建議先查出來確認(rèn):
find . -name "*.tmp"
確認(rèn)無誤后再考慮刪除:
find . -name "*.tmp" -delete
生產(chǎn)環(huán)境中不建議直接復(fù)制網(wǎng)上的 find ... -delete 命令執(zhí)行,一定要先確認(rèn)匹配范圍。
7.2 grep:按內(nèi)容查找
grep 用來在文件內(nèi)容中搜索關(guān)鍵字。
grep "error" app.log
常見用法:
grep -n "error" app.log grep -i "error" app.log grep -r "TODO" src/
參數(shù)說明:
| 參數(shù) | 作用 |
|---|---|
-n | 顯示匹配內(nèi)容所在行號 |
-i | 忽略大小寫 |
-r | 遞歸搜索目錄 |
-l | 只顯示包含匹配內(nèi)容的文件名 |
查找日志中的錯誤:
grep -n "Exception" app.log
查找項目中包含某個關(guān)鍵字的文件:
grep -r "TODO" .
如果文件名中可能包含空格或特殊字符,find 配合 xargs 時更推薦使用 -print0 和 -0:
find . -name "*.java" -print0 | xargs -r -0 grep -n "TODO"
這樣可以更安全地處理帶空格的文件名,避免因為文件名被錯誤拆分而導(dǎo)致搜索失敗。
八、常用命令組合示例
8.1 查看最近日志
tail -n 100 app.log
8.2 實時查看錯誤日志
tail -f app.log | grep "ERROR"
8.3 備份配置文件
cp -iv application.yml application.yml.bak
8.4 查找配置文件
find /etc -name "*.conf"
8.5 查找項目中的關(guān)鍵字
grep -rn "server.port" .
8.6 打包日志目錄
tar -czvf logs.tar.gz logs/
九、學(xué)習(xí) Linux 命令的建議
剛開始學(xué)習(xí) Linux 命令時,不建議一次性背太多參數(shù)。更好的方式是按使用場景記憶:
- 查看當(dāng)前位置:
pwd - 查看目錄:
ls - 切換目錄:
cd - 創(chuàng)建目錄:
mkdir - 刪除文件:
rm - 查看文件:
cat、more、head、tail - 復(fù)制移動:
cp、mv - 打包壓縮:
tar、gzip - 編輯文件:
vi、vim - 查找文件:
find - 查找內(nèi)容:
grep
同時要養(yǎng)成兩個習(xí)慣:
- 執(zhí)行刪除、覆蓋、批量操作前,先用
ls、find或grep確認(rèn)范圍。 - 修改重要配置前,先用
cp備份一份。
例如:
cp -iv nginx.conf nginx.conf.bak vim nginx.conf
這樣即使配置改錯了,也可以快速回退。
總結(jié)
這篇文章主要整理了 Linux 中最常用的一批基礎(chǔ)命令:目錄操作、文件查看、復(fù)制移動、壓縮打包、文本編輯和查找搜索。
這些命令本身并不復(fù)雜,真正重要的是理解它們在實際場景中的作用。比如 tail -f 常用于查看實時日志,cp -iv 適合修改配置前備份,find 和 grep 可以配合完成文件與內(nèi)容搜索,vim 則是服務(wù)器上修改文件時繞不開的基礎(chǔ)工具。
最后再強(qiáng)調(diào)一點:Linux 命令很強(qiáng)大,但越強(qiáng)大的命令越要注意執(zhí)行范圍。尤其是 rm、mv、find -delete 這類可能刪除或覆蓋數(shù)據(jù)的命令,執(zhí)行前一定要確認(rèn)路徑、確認(rèn)權(quán)限、確認(rèn)是否需要備份。
以上就是Linux常用命令大全(目錄、文件、壓縮、編輯與查找)的詳細(xì)內(nèi)容,更多關(guān)于Linux常用命令大全的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Bash的For循環(huán)(根據(jù)每次遞增的數(shù))
需要執(zhí)行一個命令,每次消除500個id,通常寫的是遞增1的,記一筆,怕忘了2013-08-08
Linux shell腳本對常見圖片格式批量轉(zhuǎn)換為PDF文件
Linux Debian12基于ImageMagick圖像處理工具編寫shell腳本用于常見圖片png、jpg、jpeg、webp、tiff格式批量轉(zhuǎn)PDF文件,”多個圖片分開生成多個PDF文件“或者“多個圖片合并生成一個PDF文件”,本文詳細(xì)介紹了Linux shell腳本對常見圖片格式批量轉(zhuǎn)換為PDF文件的操作2024-12-12
Shell腳本實現(xiàn)查找字符串中某字符最后出現(xiàn)的位置
這篇文章主要介紹了Shell腳本實現(xiàn)查找字符串中某字符最后出現(xiàn)的位置,本文給出了Shell腳本和C語言程序的實現(xiàn)代碼,需要的朋友可以參考下2015-01-01

