Linux(文件管理)

文件命名規則

????????除了字符“/”之外,所以的字符都可以使用,但要注意,在目錄名或文件名中,不建議使用某些特殊字符,如:<、>、?、*等

如果一個文件名中包含了特殊字符,例如空格,那么在訪問這個文件時就需要使用引號將文件名括起來。

建議文件命名規則:

  • 由于linux嚴格區分大小寫,所以盡量都用小寫字母

  • 如果必須對文件名進行分割,建議使用"_",例如:file_bj_2020.log

文件創建

主要用touch創建文件

touch 文件名稱


創建多個文件

touch 文件名稱1 文件名稱2 文件名稱3


根據序號創建多個文件

touch 文件名稱{開始序號..結束序號}

文件刪除?

Linux當中一切都為文件

rm [選項]?文件或文件夾的名稱


其中選項為:

? ? ? ? -r:針對文件夾,代表遞歸刪除,先把目錄下的所有文件刪除,然后在刪除文件夾

? ? ? ? -f:強制刪除,不提示


rm:是否刪除普通空文件 '***.txt' [可以回復 y or n]

? ? ? ? y 代表確認刪除

? ? ? ? n?代表取消

?在Linux操作系統中,Ctrl+C不是復制,而是中斷某個操作

復制與剪切

?cp復制操作

cp [選項] 源文件或文件夾 目錄路徑 /新文件或文件夾的名稱

其中選項當中的-r 是主要針對文件夾?

?剪切/移動操作 ?

mv 源文件或文件夾 目標路徑

之所以不需要-r是因為:

? ? ? ? mv默認支持移動目錄及其內容,即使目錄非空也能直接操作

? ? ? ? cp則不同:復制目錄時必須加-r,否?則會報錯

?重命名操作

mv 源文件或文件夾名稱 新文件或文件夾的名稱

打包壓縮與解壓縮

打包壓縮

? ? ? ? ? ? ? ? 打包:默認情況下,Linux的壓縮概念一次只能壓縮一個文件。

? ? ? ? ? ? ? ? 針對多文件或文件夾無法進行直接壓縮。所以需要提前對多個文件或文件夾進行打包,這樣才可以進行壓縮操作。

tar [選項] 打包后的名稱.tat 多個文件或文件夾

選項說明:

? ? ? ? -c:打包

? ? ? ? -f:filename,打包后的文件名稱

? ? ? ? -v:顯示打包的進度

? ? ? ? -u:update縮寫,更新原打包文件中的文件

? ? ? ? -t:查看打包的文件內容


tar-tf

tar-uf 打包后的文件名稱


tar-uf

tar-uf 打包后的文件名稱

u=>> update,更新,如果還想往tar包中更新或追加內容都可以通過-u選項????????

? ? ? ? ? ? ? ? 壓縮:也是一個文件和目錄的集合,且這個集合也被存儲在一個文件中。

? ? ? ? ? ? ? ? 但它們不同之處在于,壓縮所占用的磁盤空間比集合中所有文件大小的總和要小

?tar [選項] 歸檔文件名 要處理的文件或目錄

選項說明:
?? ?-c:創建新的歸檔文件。
?? ?-x:從歸檔中解出文件。
?? ?-t:列出歸檔文件中的內容,用于查看已打包的文件列表。
?? ?-f:指定歸檔文件名。此選項在使用tar時幾乎是必須的,以明確操作的目標文件。
?? ?-v:顯示處理過程中的文件信息(可選)。
?? ?-z:通過gzip過濾歸檔,用于創建.tar.gz或.tgz文件。
?? ?-j:通過bzip2過濾歸檔,用于創建.tar.bz2文件。
?? ?-J:通過xz過濾歸檔,用于創建.tar.xz文件。

特性gzipbzip2xz
壓縮速度最快中等最慢
壓縮率較低中等最高
100m文件壓縮后大小約90M約80M約70M

對壓縮包進行解壓

解壓過程非常簡單,就是把壓縮的參數中的c換成x就可以實現解壓縮了

*.tar.gz格式的壓縮包
tar -zxf 名稱.tar.gz


*.tar.bz2格式的壓縮包
tar -jxf 名稱.tar.bz2


*.tar.xz格式的壓縮包
tar -Jxf 名稱.tar.xz

?zip壓縮與解壓縮

zip【選項】壓縮后的文件名稱.zip 文件或文件夾

選項說明:
?? ?-r :遞歸壓縮,主要針對的是文件夾

Linux下已經有了gzip、bzip2以及xz壓縮命令,之所以還需要使用zip壓縮,是因為zip格式在Windows以及Linux中都是可以正常使用的

unzip解壓縮

unzip 壓縮包名稱 ? =>> ?解壓到當前目錄
unzip 壓縮包名稱 -d 指定路徑 ? =>> ?解壓到指定路徑下

查看文件

cat - 文件內容快速查看

cat [選項] 文件名

選項說明:

? ? ? ? -n:顯示行號(包括空行)

? ? ? ? -e:顯示行尾結束符($)

? ? ? ? -t:?顯示制表符(^I )

注意事項:

? ? ? ? 對大文件慎用(內存壓力)

? ? ? ? 禁止直接編輯文件(需配合>>追加)

more - 分屏查看器

# 案例1:查看日志文件
more /var/log/messages ?# 按空格鍵下翻頁

# 案例2:跳過前10行
more +10 /etc/passwd ?# 從第11行開始顯示


交互命令:

? ? ? ? 空格鍵:下一頁

? ? ? ? Enter:下一行

? ? ? ? q:退出

? ? ? ? :f 顯示當前位置

回車鍵向下移動一行
d向下移動半頁
空格鍵向下移動一頁
d向上移動一頁,后期引入功能,早期more只能前進不能后退
q退出 more

less - 高級分頁工具

核心優勢:

? ? ? ? 1.支持上下移動

? ? ? ? 2.搜索功能

# 案例1:實時追蹤日志
less +F /var/log/nginx/access.log ?# 按Ctrl+C退出

# 案例2:搜索關鍵字
less /etc/ssh/sshd_config ?# 輸入 /Port 搜索


常用參數

? ? ? ? -s:禁用行換行

? ? ? ? -i:忽略搜索大小寫

? ? ? ? -N:顯示行號

回車鍵向下移動一行
d向下移動半頁
空格鍵向下移動一頁
b向上移動一頁
上下方向鍵向上與向下移動,less命令特有功能鍵,鼠標滑輪
less -N 文件名稱顯示行號
/ 字符串搜索指定的字符串
q退出less
n/N下一個/上一個

head - 文件頭部查看

head [選項] 文件名

參數:

? ? ? ? -n 5:顯示前5行

? ? ? ? -c 100:顯示前100字節

tail - 文件尾部追蹤

?tail [選項] 文件名

參數:

? ? ? ? -f:實時追蹤(Ctrl+c退出)

? ? ? ? -F:追蹤文件名變更(適用于日志輪轉)

? ? ? ? -n +5:?從第5行開始顯示

統計文件信息

wc - 統計文件內容數量

命令:wc, wc = word count

作用:用于統計文件內容信息(包括行數、單詞數。字節數)

語法:

????????wc [參數選項] 文件名

參數:

? ? ? ? -l:表示lines,行數(以回車/換行符為標準)

? ? ? ? -w:表示words,單詞數 依照空格來判斷單詞數量

? ? ? ? -c:表示bytes, 字節數(空格,回車,換行)

?du?- 統計文件大小

命令:du

作用:查看文件或目錄(會遞歸顯示子目錄)占用磁盤空間大小

語法:

????????# du ?[參數選項] ?文件名或目錄名

常見參數:

????????-s :summaries,只顯示匯總的大小,統計文件夾的大小

???????? -h:表示以高可讀性的形式進行顯示,如果不寫-h,默認以KB的形式顯示文件大小

文本處理

find - 文件搜索利器

搜索條件

?-name "*.txt":按名稱匹配

?-mtime +7:7天前修改

?-size +100k:大于100KB

管道符

工作原理:將前一個命令的輸出作為后一個命令的輸入

性能優化

????????避免無用輸出(如cat file | grep pattern可簡化為grep pattern file

????????使用buffer工具加速大數據流傳輸

命令核心功能最佳場景性能特征
cat文件拼接/快速預覽小文件(<100行)直接輸出
less高效分頁瀏覽大文件(>1GB)智能加載
grep內容過濾日志分析正則支持
find文件檢索系統級搜索精準定位

grep - 模式匹配神器

正則表達式

?^root:行首匹配

?\.conf$:行尾匹配

?[0-9]{3}-[0-9]{4}:匹配電話號碼格式

?基礎搜索參數

- -i(忽略大小寫)

grep -i "hello" file.txt # 搜索 "hello"、"Hello"、"HELLO" 等

- -v(反向匹配,顯示不包含模式的行)

grep -v "error" log.txt # 排除所有包含 "error" 的行

- -w(全詞匹配,僅匹配完整單詞)

grep -w "cat" file.txt # 匹配 "cat",但不匹配 "category" 或 "cats"

- -n(顯示匹配行的行號)

grep -n "TODO" code.py # 輸出格式:行號:匹配內容

- -l(僅顯示包含匹配項的文件名,不顯示具體內容)

grep -l "success" *.log # 列出所有包含 "success" 的日志文件名

- -c(統計匹配行的數量)

grep -c "404" access.log # 統計 "404" 出現的次數

?組合案例

1. 在單個文件中查找關鍵詞

場景:查看日志文件并搜索“error” ?

cat system.log | grep "error"

或更高效的方式(直接使用grep): ?

grep "error" system.log

?作用:快速定位文件中的錯誤信息。

2. 在多個文件中查找關鍵詞

場景:搜索所有.txt文件中的“hello”

cat *.txt | grep "hello"

注意:如果需知道結果來自哪個文件,直接使用grep更合適:

grep "hello" *.txt

作用:跨文件搜索時,顯示文件名和匹配內容。


總結

命令選項描述
mldir-p遞歸創建目錄,從左到右一級一級創建目錄
rmdir-p同時刪除多級空目錄(從右向左一級一級刪除)
touch創建一個或多個文件
rm-r或-f-r:遞歸刪除目錄;-f:強制刪除,不提示
命令選項描述
cp-r遞歸復制,主要針對文件夾
mv移動或重命名文件/目錄
命令選項描述
tar-c、-x、-t、-f、-v、-z、-j、-J-c: 創建新的歸檔文件;-x: 從歸檔中解出文件;-t: 列出歸檔文件中的內容;-f: 指定歸檔文件名;-v: 顯示處理過程中的文件信息;-z: 使用gzip壓縮;-j: 使用bzip2壓縮;-J: 使用xz壓縮
zip-r遞歸壓縮,主要針對的是文件夾
unzip-d解壓到指定路徑

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

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

相關文章

Windows服務器部署全攻略:Flask+Vue+MySQL跨平臺項目實戰(pymysql版)

當你的后端(Flask+pymysql,Windows開發)與前端(Vue,Mac開發)需要統一部署到Windows服務器時,通過「IIS反向代理+原生組件適配」方案可實現穩定交互。以下是針對Windows環境的專屬部署指南,解決路徑適配、服務啟動等核心問題。 一、Windows服務器環境準備(必做!) 1…

wpf 輸入框 在輸入時去除水印

wpf ScrollViewer 在輸入數據時去除水印 在WPF&#xff08;Windows Presentation Foundation&#xff09;中&#xff0c;ScrollViewer控件通常用于顯示滾動內容。如果你想在ScrollViewer中使用數據輸入&#xff08;例如文本輸入&#xff09;&#xff0c;并且希望在輸入時去除水…

動態思維——AI與思維模型【91】

一、定義 動態思維思維模型是一種強調在思考問題和分析情況時&#xff0c;充分考慮到事物的變化性、發展性和相互關聯性&#xff0c;不局限于靜態的、孤立的視角&#xff0c;而是以發展變化的眼光看待事物&#xff0c;能夠根據不同時間、環境和條件的變化&#xff0c;靈活調整…

多模態大語言模型arxiv論文略讀(五十五)

MoMA: Multimodal LLM Adapter for Fast Personalized Image Generation ?? 論文標題&#xff1a;MoMA: Multimodal LLM Adapter for Fast Personalized Image Generation ?? 論文作者&#xff1a;Kunpeng Song, Yizhe Zhu, Bingchen Liu, Qing Yan, Ahmed Elgammal, Xiao…

Go-web開發之帖子功能

帖子功能 route.go r.Use(middleware.JWTAuthMiddleware()){r.POST("/post", controller.CreatePostHandler)r.GET("/post/:id", controller.GetPostDetailHandler)}post.go 定義帖子結構 type Post struct {Id int64 json:"id" …

C++ 項目中的多語言字符串管理方案(支持自動提示與動態加載)

&#x1f4ac; C 項目中的多語言字符串管理方案&#xff08;支持自動提示與動態加載&#xff09; 在中大型 C 應用中&#xff0c;我們常常會面臨界面提示文本繁多、需要支持多語言切換的問題。為了解決字符串管理混亂、缺乏自動提示、難以維護等問題&#xff0c;本文將提供一種…

數控滑臺:將制造業推向智能化的關鍵裝備

隨著制造業的不斷發展和智能化進程的加速推進&#xff0c;數控滑臺作為一種關鍵的裝備&#xff0c;在各種工業生產中發揮著越來越重要的作用。數控滑臺不僅提高了生產效率&#xff0c;節約了人力物力資源&#xff0c;還大大降低了生產過程中的錯誤率&#xff0c;保障了產品的質…

【STM32】定時器輸入捕獲

STM32 定時器輸入捕獲功能筆記 一、什么是輸入捕獲&#xff08;Input Capture&#xff09; 輸入捕獲是利用定時器的輸入通道&#xff0c;在檢測到信號電平變化&#xff08;如上升沿或下降沿&#xff09;時&#xff0c;立即將當前計數器的值捕獲并保存到捕獲寄存器&#xff08…

Qt通過QXlsx庫文件寫入到excl文件,讀取excl文件

第一&#xff1a;下載QXlsx庫文件 https://download.csdn.net/download/qq_32663053/90739425 第二&#xff1a;在Qt項目中引入QXlsx庫&#xff0c;需要把QXlsx庫文件放在項目文件夾下 第三&#xff1a;將tableview中的數據存入到excl文件 代碼&#xff1a; void MainWindow…

【KWDB 創作者計劃】一款面向 AIoT 的多模數據庫實戰體驗

一、KWDB&#xff1a;AIoT 時代的數據庫新選擇 KWDB 是由開放原子開源基金會孵化的分布式多模數據庫&#xff0c;專為物聯網、工業互聯網等場景設計。其核心價值在于時序與關系數據融合處理能力&#xff1a; ?多模統一引擎?&#xff1a;單個實例可同時建立時序庫&#xff08…

【教學類-102-22】蝴蝶彩色1——通義萬相“彩色蝴蝶”透明切邊基礎圖片制作(五款板式、批量下載、修圖、透明、切邊)

一、下載圖片 關鍵詞&#xff1a;卡通簡筆畫&#xff0c;白色背景&#xff0c;黑白輪廓線&#xff0c;、鮮艷&#xff0c;彩色&#xff0c;一只蝴蝶&#xff0c;簡單&#xff0c;可愛&#xff0c;矢量圖&#xff0c;大。 簡筆畫 強度1 4:3(長方形適配A4紙&#xff09; 五…

【JAVA】方法定義與重載:JVM方法調用機制(8)

核心知識點詳細解釋 Java方法的定義和使用 在Java中&#xff0c;方法是一段具有特定功能的代碼塊&#xff0c;它可以接受參數并返回一個值。方法的定義包括方法的修飾符、返回類型、方法名、參數列表和方法體。其基本語法如下&#xff1a; 修飾符 返回類型 方法名(參數列表)…

基于STM32的帶恒溫系統智能外賣柜設計

標題:基于STM32的帶恒溫系統智能外賣柜設計 內容:1.摘要 隨著外賣行業的迅速發展&#xff0c;對外賣存放設備的智能化和功能性要求日益提高。本設計的目的是開發一種基于STM32的帶恒溫系統智能外賣柜。方法上&#xff0c;以STM32微控制器為核心&#xff0c;結合溫度傳感器、加…

【綜述】相位解包裹算法對比分析

引言 相位解包裹是基于干涉的位相測量技術中的重要環節&#xff0c;如合成孔徑雷達干涉、光學干涉測量技術、醫學成像技術、數字全息三維成像、相干衍射成像等技術中都涉及位相解包裹。位相解包裹也稱為位相展開、位相解截斷、位相解纏繞等。與之相反的過程謂之包裹位相、截斷…

Rust 學習筆記:關于枚舉與模式匹配的練習題

Rust 學習筆記&#xff1a;關于枚舉與模式匹配的練習題 Rust 學習筆記&#xff1a;關于枚舉與模式匹配的練習題以下程序能否通過編譯&#xff1f;若能&#xff0c;輸出是什么&#xff1f;考慮這兩種表示結果類型的方式&#xff0c;若計算成功&#xff0c;則包含值 T&#xff1b…

C++負載均衡遠程調用學習之QPS性能測試

目錄 1.昨日回顧 2.QPS_TEST_PROTOBUF協議的集成 3.QPS_TEST_SERVER端實現 4.QPS_TEST_QPS簡單介紹 5.QPS_TEST_QPS客戶端工具編寫和性能測試 1.昨日回顧 2.QPS_TEST_PROTOBUF協議的集成 ## 14) Reactor框架QPS性能測試 ? 接下來我們寫一個測試用例來測一下我們…

【MySQL數據庫】視圖

1&#xff0c;視圖的基本介紹 視圖是一個虛擬表&#xff0c;其內容由查詢定義。與真實表一樣的是&#xff0c;視圖包含帶有名稱的列和行數據&#xff1b;與真實表不一樣的是&#xff0c;視圖本身并不在數據庫中存儲數據。視圖的數據變化會影響到基表&#xff0c;基表的數據變化…

Linux系統安裝方式+適合初學者的發行版本

Linux系統安裝方式適合初學者發行版—目錄 一、Linux系統的安裝方式1. 物理機直接安裝2. 虛擬機安裝3. 雙系統安裝4. Live USB試用5. 云服務器安裝 二、適合初學者的Linux發行版1. Ubuntu2. Linux Mint3. Zorin OS4. Pop!_OS5. Elementary OS6. Fedora7. Manjaro 三、選擇建議場…

Linux C++ JNI封裝、打包成jar包供Java調用詳細介紹

在前面 Android專欄 中詳細介紹了如何在Android Studio中調用通過jni封裝的c庫。 在Android使用 opencv c代碼&#xff0c;需要準備opencv4android&#xff0c;也就是c的任何代碼&#xff0c;是使用Android NDK編譯的&#xff0c;相當于在windows/mac上使用Android stdido交叉…

4.1 模塊概述

1.Python結構 工程 > 包 > 模塊 Python工程: “Python項目中最大的文件夾(本質就是一個文件夾)” --- 左側的 CODE文件夾 為Python工程 Python包: 本質就是一個文件夾,但是python包中具備具體的標識,如果沒有標識則不能導入 --- 左側的 01.Python基礎 文件夾為python包 P…