Linux 文件操作命令大全:從入門到精通的實用指南

Linux 文件操作命令大全:從入門到精通的實用指南

在 Linux 系統中,文件操作是日常工作的核心內容之一。無論是開發者、運維工程師還是 Linux 愛好者,掌握常用的文件操作命令都能極大提升工作效率。本文將詳細介紹 Linux 系統中最常用的文件操作命令,每個命令都附帶具體代碼示例,幫助你快速上手。

文件創建命令

touch 命令

touch命令是創建空文件的最常用方式,同時也可以用于修改文件的時間戳。

基本語法touch [文件名]

示例 1:創建單個空文件

touch example.txt

執行后,當前目錄下會生成一個名為example.txt的空文件。

示例 2:同時創建多個文件

touch file1.txt file2.md file3.sh

這條命令會一次性創建三個不同后綴的空文件。

示例 3:修改文件時間戳(不改變文件內容)

touch -m example.txt  # 僅修改修改時間touch -a example.txt  # 僅修改訪問時間

文件查看命令

cat 命令

cat命令用于查看文件內容,適合查看內容較少的文件。

基本語法cat [文件名]

示例 1:查看文件內容

cat example.txt

執行后會在終端直接顯示example.txt的全部內容。

示例 2:查看文件并顯示行號

cat -n example.txt

加上-n參數后,會在每行內容前顯示行號。

more 命令

more命令適合查看內容較多的文件,支持分頁顯示。

基本語法more [文件名]

示例

more long_document.txt

執行后會分頁顯示文件內容,按空格鍵翻頁,按q鍵退出查看。

less 命令

less命令是more的增強版,支持向上滾動查看內容。

基本語法less [文件名]

示例

less large_file.log

使用方向鍵上下滾動,按/鍵可以搜索內容,按q鍵退出。

head 和 tail 命令

head用于查看文件開頭部分內容,tail用于查看文件末尾內容,默認都是 10 行。

示例 1:查看文件前 5 行

head -n 5 example.txt

示例 2:查看文件最后 3 行

tail -n 3 example.txt

示例 3:實時監控文件新增內容(常用于日志查看)

tail -f app.log

加上-f參數后,會持續顯示文件新增的內容,按Ctrl+C退出。

文件復制命令

cp 命令

cp命令用于復制文件或目錄,是 Linux 中最常用的命令之一。

基本語法cp [源文件] [目標位置]

示例 1:復制文件到當前目錄

cp /home/user/documents/report.pdf ./

/home/user/documents/目錄下的report.pdf復制到當前目錄(./表示當前目錄)。

示例 2:復制文件到指定目錄并改名

cp example.txt /tmp/sample.txt

example.txt復制到/tmp目錄下,并改名為sample.txt

示例 3:復制目錄(需要加-r參數表示遞歸復制)

cp -r project/ backup/

project目錄及其所有內容復制到backup目錄中。

文件移動與重命名命令

mv 命令

mv命令既可以移動文件,也可以重命名文件,用法非常靈活。

基本語法mv [源文件] [目標位置]

示例 1:重命名文件

mv oldname.txt newname.txt

oldname.txt改名為newname.txt

示例 2:移動文件到指定目錄

mv document.txt /home/user/docs/

document.txt移動到/home/user/docs/目錄下。

示例 3:移動多個文件到指定目錄

mv *.jpg /home/user/images/

將當前目錄下所有.jpg格式的圖片文件移動到/home/user/images/目錄(*是通配符,表示所有)。

文件刪除命令

rm 命令

rm命令用于刪除文件或目錄,使用時需要特別小心,因為刪除的文件通常難以恢復。

基本語法rm [文件或目錄]

示例 1:刪除單個文件

rm temp.txt

刪除temp.txt文件,系統會詢問是否刪除,輸入y確認。

示例 2:強制刪除文件(不提示)

rm -f unnecessary.log

加上-f參數后,刪除文件時不會有任何提示,直接刪除。

示例 3:刪除目錄(需要加-r參數表示遞歸刪除)

rm -r old_folder/

刪除old_folder目錄及其包含的所有文件和子目錄。

示例 4:強制刪除目錄(不提示)

rm -rf obsolete_data/

-rf組合參數表示強制遞歸刪除,這是非常危險的命令,使用時一定要確認路徑正確。

目錄操作命令

mkdir 命令

mkdir用于創建新目錄。

基本語法mkdir [目錄名]

示例 1:創建單個目錄

mkdir photos

在當前目錄下創建photos目錄。

示例 2:創建多級目錄(需要-p參數)

mkdir -p documents/work/reports

一次性創建documentsdocuments/workdocuments/work/reports三級目錄,如果沒有-p參數,當父目錄不存在時會報錯。

rmdir 命令

rmdir用于刪除空目錄(如果目錄非空,需要先刪除里面的文件)。

示例

rmdir empty_folder/

刪除empty_folder空目錄。

cd 和 pwd 命令

雖然這兩個命令不是直接操作文件的,但它們是文件操作的基礎:

  • pwd:顯示當前所在目錄的絕對路徑

  • cd:切換目錄

示例 1:顯示當前目錄

pwd

執行后可能顯示類似/home/user/projects的結果。

示例 2:切換到指定目錄

cd /var/log/

切換到/var/log/目錄。

示例 3:回到上一級目錄

cd ..

示例 4:回到用戶主目錄

cd ~

~符號表示當前用戶的主目錄。

文件權限操作命令

chmod 命令

chmod用于修改文件或目錄的權限,這是 Linux 系統中保證文件安全的重要命令。

基本語法chmod [權限設置] [文件或目錄]

權限可以用數字表示(r=4, w=2, x=1):

  • 讀權限(r):4

  • 寫權限(w):2

  • 執行權限(x):1

示例 1:設置文件所有者可讀可寫可執行,同組用戶可讀可執行,其他用戶只讀

chmod 754 script.sh
  • 7(4+2+1):所有者有讀、寫、執行權限

  • 5(4+1):同組用戶有讀和執行權限

  • 4:其他用戶只有讀權限

示例 2:給所有用戶添加執行權限

chmod a+x program.py

a表示所有用戶,+x表示添加執行權限。

文本輸出與處理命令

echo 命令

echo命令主要用于在終端輸出字符串,也可以將內容寫入文件。

基本語法echo [字符串或變量]

示例 1:輸出普通字符串

echo "Hello, Linux!"

執行后終端會顯示Hello, Linux!

示例 2:將內容寫入文件(覆蓋原有內容)

echo "First line of content" > data.txt

這條命令會創建data.txt文件(如果不存在),并將First line of content寫入該文件,若文件已有內容則會被覆蓋。

示例 3:將內容追加到文件

echo "Second line of content" >> data.txt

使用>>符號時,內容會被添加到文件末尾,不會影響原有內容,執行后data.txt會有兩行內容。

示例 4:輸出變量值

NAME="Linux User"echo $NAME

先定義變量NAME并賦值,然后通過echo $NAME輸出變量的值,終端會顯示Linux User

grep 命令

grep命令用于在文件中搜索符合模式的字符串,是文本處理中非常強大的工具。

基本語法grep [選項] [模式] [文件]

示例 1:在文件中搜索指定字符串

grep "error" app.log

app.log文件中搜索包含error的所有行,并將這些行顯示出來。

示例 2:忽略大小寫搜索

grep -i "warning" system.log

-i參數表示忽略大小寫,會同時匹配warningWARNINGWarning等形式。

示例 3:顯示匹配行的行號

grep -n "success" result.txt

-n參數會在匹配到的行前顯示對應的行號,方便定位內容位置。

示例 4:搜索多個文件

grep "config" *.ini

在當前目錄下所有.ini格式的文件中搜索config字符串。

示例 5:反向搜索(顯示不包含指定模式的行)

grep -v "debug" process.log

-v參數表示反向匹配,會顯示所有不包含debug的行。

wc 命令

wc命令用于統計文件中的行數、單詞數和字符數。

基本語法wc [選項] [文件]

常用選項:

  • -l:僅統計行數

  • -w:僅統計單詞數

  • -c:僅統計字符數

示例 1:統計文件的行數、單詞數和字符數

wc document.txt

執行后會顯示三個數字,分別是document.txt的行數、單詞數和字符數,最后是文件名。

示例 2:僅統計行數

wc -l article.txt

該命令會顯示article.txt文件的總行數,常用于統計日志條目數量等場景。

示例 3:統計多個文件的單詞數

wc -w file1.txt file2.txt

會分別顯示file1.txtfile2.txt的單詞數,最后還會顯示兩個文件的總單詞數。

示例 4:統計當前目錄下的文件數量

ls | wc -l

通過管道|ls命令的輸出(當前目錄下的文件和目錄列表)傳遞給wc -l,從而統計出文件和目錄的總數。

總結

掌握這些基本的 Linux 文件操作命令,能讓你在 Linux 系統中更加得心應手。實際使用中,這些命令還有更多參數和組合用法,可以通過man [命令]查看完整的幫助文檔(例如man cp查看cp命令的詳細說明)。

記住,Linux 命令的學習沒有捷徑,多練習、多使用才能熟練掌握。建議從簡單的命令開始,逐步嘗試復雜的組合用法,慢慢構建自己的 Linux 命令知識體系。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/89091.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/89091.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/89091.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux開發利器:探秘開源,構建高效——基礎開發工具指南(上)【包管理器/Vim】

???~~~~~~歡迎光臨知星小度博客空間~~~~~~??? ???零星地變得優秀~也能拼湊出星河~??? ???我們一起努力成為更好的自己~??? ???如果這一篇博客對你有幫助~別忘了點贊分享哦~??? ???如果有什么問題可以評論區留言或者私信我哦~??? ??????個人…

基于遷移學習的培養基配方開發方法

本文為學習筆記,原文專利: 中國專利公布公告 然后輸入 202110622279.7 概覽 一、問題背景 傳統培養基開發痛點: 數據依賴:需大量細胞實驗(1000配方)訓練專用模型 遷移性差:A細胞模型無法直接…

Web3.0與元宇宙:重構數字文明的技術范式與社會變革

一、技術融合:Web3.0與元宇宙的底層架構互補1.1 區塊鏈與智能合約:構建信任基石去中心化信任機制:Web3.0的區塊鏈技術為元宇宙提供去中心化信任框架,虛擬資產(如土地、道具)通過NFT(非同質化代幣…

Java: OracleHelper

/*** encoding: utf-8* 版權所有 2025 ©涂聚文有限公司 * 許可信息查看:言語成了邀功盡責的功臣,還需要行爲每日來值班嗎* 描述: https://www.oracle.com/database/technologies/appdev/jdbc-downloads.html ojdbc11* Author : geovi…

OSPFv3-一二類LSA

文章目錄OSPFv3 LSA類型Router LSANetwork LSA🏡作者主頁:點擊! 🤖Datacom專欄:點擊! ??創作時間:2025年07月12日20點01分 OSPFv3 LSA類型 Router LSA 不再包含地址信息,使能 OS…

HugeGraph 【圖數據庫】JAVA調用SDK

1.引入依賴<dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>28.0-jre</version> </dependency><dependency><groupId>com.squareup.okhttp3</groupId><artifac…

軟考中級【網絡工程師】第6版教材 第2章 數據通信基礎(中)

考點分析&#xff1a;重要程度&#xff1a;???&#xff0c;本章可能是全書最難的章節&#xff0c;偏理論&#xff0c;公式多除了傳輸介質&#xff0c;其他知識點只考選擇題&#xff0c;考試一般占3 ~ 5分高頻考點&#xff1a;PCM、奈奎斯特定理、曼徹斯特編碼&#xff1b;難…

單片機(STM32-中斷)

一、中斷基礎知識 1.概念 中斷&#xff08;Interrupt&#xff09;是一種特殊的事件處理機制。當CPU正在執行主程序時&#xff0c;如果出現了某些緊急或重要的事件&#xff08;如外設請求、定時器溢出等&#xff09;&#xff0c;可以暫時中止當前的程序&#xff0c;轉而去處理…

gitlab-ci.yml

.gitlab-ci.yml 文件的位置 該文件應放置在 GitLab 項目的代碼倉庫的根目錄 下&#xff0c;具體說明如下&#xff1a;存儲庫根目錄 .gitlab-ci.yml 是 GitLab 持續集成&#xff08;CI&#xff09;的配置文件&#xff0c;需直接放在項目的代碼倉庫的根目錄&#xff08;與 .git 目…

使用JS編寫一個購物車界面

使用JS編寫一個購物車界面 今天我們來剖析一個精心設計的家具商店購物車頁面&#xff0c;這個頁面不僅美觀大方&#xff0c;還具備豐富的交互功能。讓我們一步步拆解它的設計理念和技術實現&#xff01; 頁面展示 頁面整體結構 這個購物車頁面采用了經典的電商布局模式&…

零信任安全架構:如何在云環境中重構網絡邊界?

一、云原生時代&#xff1a;傳統防火墻為何轟然倒塌&#xff1f; 當業務碎片化散落在AWS、阿里云、私有IDC&#xff0c;當員工隨手在咖啡廳WiFi連接生產數據庫&#xff0c;“內網可信”的基石瞬間崩塌&#xff0c;傳統防火墻徹底淪為馬奇諾防線&#xff1a; 邊界消亡&#xff1…

css實現燒香效果

效果&#xff1a;代碼&#xff1a;<!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>動態香燭效果&…

硬件產品的技術資料管控是確保研發可追溯、生產可復制、質量可控制的核心環節。

硬件產品的技術資料管控是確保研發可追溯、生產可復制、質量可控制的核心環節。以下針對BOM單、PCB文件、程序代碼、原理圖四大核心要素&#xff0c;結合行業實踐提出管控方向劃分及優化策略&#xff1a;&#x1f4cb; 一、硬件BOM單的精細化管控方向BOM單是硬件生產的“配方表…

Uniswap V2/V3/V4簡短說明

Uniswap 是以太坊上最知名的去中心化交易所&#xff08;DEX&#xff09;&#xff0c;它通過不同的版本&#xff08;V2、V3、V4&#xff09;不斷改進&#xff0c;變得更高效、更靈活。以下是用通俗易懂的方式介紹它們之間的異同&#xff1a; Uniswap V2&#xff1a;基礎版&#…

C++面向對象創建打印算術表達式樹

C面向對象&#xff0c;實現算術表達式樹的創建和打印的案例&#xff0c;來源于《C沉思錄》第八章&#xff0c;涉及數據抽象、繼承、多態&#xff08;動態綁定&#xff09;、句柄&#xff0c;其中句柄的使用是核心&#xff0c;關于句柄的較為簡單的文章鏈接點擊這里&#xff0c;…

力扣每日一題--2025.7.16

&#x1f4da; 力扣每日一題–2025.7.16 &#x1f4da; 3201. 找出有效子序列的最大長度 I&#xff08;中等&#xff09; 今天我們要解決的是力扣上的第 3201 題——找出有效子序列的最大長度 I。這道題雖然標記為中等難度&#xff0c;但只要掌握了正確的思路&#xff0c;就能…

SFT:大型語言模型專業化定制的核心技術體系——原理、創新與應用全景

本文由「大千AI助手」原創發布&#xff0c;專注用真話講AI&#xff0c;回歸技術本質。拒絕神話或妖魔化。搜索「大千AI助手」關注我&#xff0c;一起撕掉過度包裝&#xff0c;學習真實的AI技術&#xff01; 以下基于權威期刊、會議論文及技術報告&#xff0c;對監督微調&#x…

若依前后端分離框架配置多數據庫表

若依前后端分離框架配置多數據庫表1、配置application.yml2、注釋掉application-druid.yml中的數據庫3、在DataSourceType 中添加新增的數據庫來源4、配置DruidConfig文件4、1新增注入方法&#xff0c;在DataSourceType類添加數據源枚舉4、2在DruidConfig類dataSource方法添加數…

29.安卓逆向2-frida hook技術-逆向os文件(二)IDA工具下載和使用(利用ai分析so代碼)

免責聲明&#xff1a;內容僅供學習參考&#xff0c;請合法利用知識&#xff0c;禁止進行違法犯罪活動&#xff01; 內容參考于&#xff1a;圖靈Python學院 工具下載&#xff1a; 鏈接&#xff1a;https://pan.baidu.com/s/1bb8NhJc9eTuLzQr39lF55Q?pwdzy89 提取碼&#xff1…

[析]Deep reinforcement learning for drone navigation using sensor data

Deep reinforcement learning for drone navigation using sensor data 基于傳感器數據的無人機導航深度強化學習方法 評價&#xff1a;MDP無記憶性&#xff0c;使用LSTM補足缺點。PPO解決新舊策略差距大的問題。 對于環境中的障礙物&#xff0c;設置增量課程&#xff0c;障礙…