Linux系統文件與目錄內容檢索(Day.2)

一、文件和目錄內容檢索處理命令

1、uniq去重

語法

uniq [options] [input_file [output_file]]

選項

選項作用
-c進行計數,并刪除文件中重復出現的行
-d僅顯示連續的重復行
-u僅顯示出現一次的行
-i忽略大小寫

案例

1、刪除輸入文件中的重復行

sort input.txt | uniq

?

2、僅顯示重復的行

sort input.txt | uniq -d

?

3、忽略大小寫進行比較

sort -i input.txt | uniq -i

4、進行計數,并刪除文件中重復出現的行

sort uniq.txt | uniq -c

?

2、tr轉換

語法

tr [options] set1 set2

選項

選項作用
-c保留字符集1的字符,其他的字符用(包括換行符\n)字符集2替換
-d刪除所有屬于字符集1(-d 后面的參數)的字符
-s將重復出現的字符串壓縮為一個字符串;用字符集2 替換 字符集1
-t字符集2 替換 字符集1,不加選項同結果

案例

1、將文本中的大寫字母轉換為小寫字母

cat uniq.txt | tr 'A-Z' 'a-z'

2、刪除文本中的空格

echo "hello world" | tr -d ' '

3、將文本中的特定字符替換為另一個字符

echo "abc-" | tr 'a-z' 'X-Y'

4、壓縮重復字符

echo "foo     bar" | tr -s ' '

?

5、去掉空白符

echo "hello\tworld" | tr -d '[:space:]'

3、cut切割

語法

cut [options] [field-spec]

選項

選項作用
-f通過指定哪一個字段進行提取。cut命令使用“TAB”作為默認的字段分割符
-d“TAB”是默認的分隔符,使用此選項可更改為其他的分隔符
-c以字符為單位進行分割
- -complement用于排除所指定的字段
- -output-delimiter更改輸出內容的分隔符
-s跳過空白字段
-b, -B僅打印非空白的字段。

案例

1、提取指定范圍內的字段:(連續)

cut -d ':' -f 1-3 file.txt

?

2、使用制表符作為分隔符提取字段

cut -d $'\t' -f 1 file.txt

3、提取指定文件中的所有字段(Rocky9中不可用)

cut -d ':' -f * file.txt

4、僅提取非空白字段

cut -b 3 file.txt

5、使用通配符提取多個字段:(可以不連續)

cut -d':' -f 1,2,3 file.txt

6、統計messages(系統)日志每個時間點產生日志的條目數量

cut -d' ' -f 4 messages | cut -d ':' -f 1 | uniq -c

7、統計web站點訪問用戶數

[root@c2407 nginx]# cat access.log  | cut -d " " -f 1 | uniq -c12 192.168.115.125 192.168.115.100

4、which命令

語法

which [command]

選項

選項作用
-a--all打印所有匹配的命令路徑,而不僅僅是第一個匹配的。
-p--print-path除了命令名稱外,還打印出完整的路徑。
-v--version打印 which 命令的版本信息。

案例

5、whereis命令

語法

whereis [-bms] [-u] [-f] [-h] [-L] [-M] [-S] [-version] [command]

選項

選項作用
-b--binary只查找二進制文件。
-m--manual只查找手冊頁。
-s--source只查找源代碼文件。
-u--usage打印使用說明。
-f--follow跟隨符號鏈接。
-h--help打印幫助信息。
L--logical搜索邏輯路徑,不包含物理符號鏈接。
-M--physical搜索物理路徑,不包含邏輯符號鏈接。
-S--size只查找指定大小的文件。

6、diff命令

語法

diff [選項] 文件1 文件2

選項

選項作用
-q--quiet只輸出文件差異的文件名,不顯示詳細差異。
-c--context以語境方式顯示差異,默認顯示3個字符的上下文。
-u--unified以統一的方式顯示差異,這是默認模式,顯示共同的祖先與當前文件之間的差異。
-a--text比較文本文件,忽略文件的格式差異。
-b--ignore-space-change忽略空白的差異(空格、制表符等)。
-B--ignore-space-at-eol忽略每行末尾的空白差異。
-i--ignore-case忽略大小寫差異。
-D--horizontal-split以水平分割的方式顯示差異。
-E--sideby-side以并排的方式顯示差異。
-l--from-file只顯示文件2相對于文件1的差異。
-r--recursive遞歸地比較目錄。
-N--new-file當文件2是文件1不存在的文件時,只顯示文件2的內容。
-x--exclude跳過指定模式的文件。
-X--exclude-from從指定的文件中讀取排除模式。
--from-file=FILE-l,指定比較的基準文件。
--horizontalsplit-D,以水平分割的方式顯示差異。
--left-column只顯示左側列的差異。
--no-dereference不解析符號鏈接。
--old-file當文件1是文件2不存在的文件時,只顯示文件1的內容。
--recursive-r,遞歸地比較目錄。
--right-column只顯示右側列的差異。
--speed-large-files用于大文件,減少內存使用。

案例

[root@c2407 opt]# diff /etc/passwd ./passwd 
44d43
< nginx:x:988:982:Nginx web server:/var/lib/nginx:/sbin/nologin

比較兩個文件的區別差距

二、文件與目錄歸檔壓縮命令

1、tar命令

語法

tar [選項] [歸檔文件名] [-C] [解壓路徑]

常用組合選項:

歸檔:tar zcvf

? ? ? ? ? ?tar jcvf

解壓:tar xf -C

查看:tar tvf

選項

選項作用
-z,--gzip用 gzip 對存檔壓縮
-c, --create建立新的存檔
-v, --verbose詳細顯示處理的文件
-f, --file指定存檔文件路徑及名稱
-j, --bzip2通過 bzip2 過濾歸檔
-x, --extract, --get從歸檔中解出文件
-C指定解壓后的存儲路徑
tvf僅查看歸檔包中的文件內容

案例

1、歸檔/root下所有內容

2、查看壓縮內容

3、壓縮

tar -jcvf lx.tar.bz2 lx.txt
tar -zcvf lx.tar.gz lx.txt

4、解壓

解壓到當前目錄

tar xf opt.tar

解壓到其他目錄 -C? /tmp/

2、zip命令

語法

zip 壓縮后的文件名 需要壓縮的文件

解壓縮命令

unzip 壓縮文件名

3、gzip命令

語法

gzip 需要壓縮的文件

解壓縮命令

gunzip 壓縮文件

案例

4、bzip2命令

語法

bzip2 需要壓縮的文件

解壓縮命令

bunzip2 壓縮文件

案例

三、統計命令

1、wc

wc -l 行數?
wc -w 單詞
wc -c 字符

2、du

du -sh 總容量
su -ah 每個文件的容量及總容量

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

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

相關文章

如何選擇一個容易被搜索引擎發現的域名?

在這個數字化時代&#xff0c;域名不僅是企業線上身份的標識&#xff0c;更是影響網站搜索曝光率的關鍵因素。一個精心挑選的域名能為品牌帶來更多自然流量&#xff0c;下面我們就來探討幾個實用技巧。一、簡潔易記是王道好域名首先要讓人過目不忘。想象一下&#xff0c;當用戶…

樹形DP進階:結合dfn序的線性化樹問題求解技巧

樹形DP進階&#xff1a;結合dfn序的線性化樹問題求解技巧一、dfn序與樹的線性化1.1 dfn序的基本概念1.2 樹形DP結合dfn序的優勢二、核心應用&#xff1a;子樹區間的DP優化2.1 子樹權值和的快速查詢與更新問題描述結合dfn序的解法代碼實現&#xff08;前綴和版本&#xff09;優化…

九、Maven入門學習記錄

Maven介紹Maven作用統一項目結構Maven安裝&#xff08;注意配置阿里云私服時url要跟換成最新的&#xff09;IDEA創建Meavn項目Maven坐標介紹IDEA導入Maven項目依賴配置依賴傳遞依賴傳遞-排除依賴依賴范圍生命周期生命周期-執行特定生命周期生命周期-總結

中標喜訊 | 安暢檢測再下一城!斬獲重慶供水調度測試項目

安暢檢測在第三方檢測領域持續深耕&#xff0c;再傳捷報&#xff01;公司于2025年7月30日正式收到中標通知&#xff0c;成功拿下重慶水資源產業股份有限公司 “重慶西部科學城多水廠分區分壓供水優化調度研究項目&#xff08;軟件測試標段&#xff09;”。 此次中標不僅是市場…

銀河麒麟V10一鍵安裝DM8的腳本及高階運維SQL分享

介質下載地址名稱網址銀河麒麟高級服務器操作系統V10&#xff08;SP3&#xff09;用戶手冊https://www.kylinos.cn/support/document/60.htmlDM8 安裝手冊https://eco.dameng.com/document/dm/zh-cn/pm/install-uninstall.htmlDM 數據庫安裝&#xff08;Linux安裝&#xff09;h…

cobalt strike(CS)與Metasploit(MSF)聯動

CS —> MSF首先cs上創建一個http的外部監聽器。此時在CS服務端查看監聽的ip&#xff0c;發現并沒有開啟&#xff0c;需要到成功移交會話后才會啟動。netstat -tunlp | grep 7000在MSF中使用handler模塊&#xff0c;配置監聽。注意&#xff1a;目標機器的地址是rhost&#xf…

C# 類型

原文&#xff1a;C# 類型_w3cschool C#類型 類型定義值的藍圖。有不同的操作與不同類型相關聯。 在下面的示例中&#xff0c;我們使用兩個類型為int的常量&#xff0c;值為2 和 3。 static void Main() {int x 2 * 3;Console.WriteLine (x); } int 是一個表示整數值的構建…

確保TDesign Vue Next中t-color-picker組件在彈出顏色拾取面板時保證該面板不抖動方法參考

使用TDesign Vue Next中的組件t-color-picker時&#xff0c;在顏色面板彈出后&#xff0c;如果修改里面的顏色&#xff0c;發現這個顏色拾取面板會隨著顏色的改變位置不斷抖動&#xff0c;該問題由顯示顏色的數值文本的長度變化引起&#xff0c;因此要覆蓋組件內部顏色值文本的…

bypass

代碼解析修改自身bypass&#xff1a;第一句話$s"Declaring file object\n";定義一個s&#xff0c;值為Declaring file object第二句話$d$_SERVER[DOCUMENT_ROOT].$_SERVER[DOCUMENT_URI]; 不知道$_SERVER是什么&#xff0c;那就打印出來看看。輸入echo <pre>;…

C語言:構造類型學習

內容提要 構造類型 枚舉類型typedef 綜合案例&#xff1a;斗地主 構造類型 枚舉類型 建議&#xff1a;如果定義不相干的常理&#xff0c;使用宏定義&#xff08;符號常量&#xff09;&#xff1b;如果需要定義一組相關聯的常量&#xff0c;如月份0~11&#xff0c;星期0~6&#…

Prometheus-3--Prometheus是怎么抓取Java應用,Redis中間件,服務器環境的指標的?

1、Prometheus抓取Java應用的指標 1、數據來源&#xff1a;Java應用自身暴露的指標 Java應用的指標數據來源于應用代碼中定義的指標對象&#xff08;如Counter、Gauge、Histogram等&#xff09;&#xff0c;通過Prometheus客戶端庫&#xff08;如io.prometheus:client_java&…

42.安卓逆向2-補環境-unidbg安裝和簡單使用

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

數據結構與算法:哈希函數的應用及一些工程算法

前言這篇里的東西可以說了解了解就行了。一、哈希函數均勻性展示原本讓deepseek轉了一下老師的java代碼&#xff0c;但發現復刻起來太麻煩了。又因為這個理解就好&#xff0c;競賽不會有&#xff0c;所以就直接貼老師的java代碼了……import java.security.MessageDigest; impo…

交叉編譯ARM環境

ARM交叉編譯 可以采用交叉編譯工具鏈&#xff1a; sudo apt-get install aarch64-linux-gnu-gcc sudo apt-get install aarch64-linux-gnu-g sudo apt-get install gcc-arm-linux-gnueabi sudo apt-get install g-arm-linux-gnueabi 上面兩個是64位&#xff0c;下面兩個是…

算法思想 之 拓撲排序問題

歡迎拜訪&#xff1a;霧里看山-CSDN博客 本篇主題&#xff1a;算法思想 之 拓撲排序問題 發布時間&#xff1a;2025.8.4 隸屬專欄&#xff1a;算法 目錄算法介紹核心原理適用場景實現步驟(Kahn 算法)例題課程表題目鏈接題目描述算法思路代碼實現課程表 II題目鏈接題目描述算法思…

機器學習 入門——決策樹分類

決策樹是一種直觀且強大的機器學習算法&#xff0c;適用于分類和回歸任務。本文將全面介紹決策樹分類的原理、實現、調優和實際應用。一、什么是決策樹分類1.概念決策樹分類是一種樹形結構的分類模型&#xff0c;它通過遞歸地將數據集分割成更小的子集來構建決策規則。就像我們…

虛擬機中查看和修改文件權限

在虛擬機中管理文件權限是系統管理的重要部分&#xff0c;無論是在Linux還是Windows虛擬機中。下面我將詳細介紹兩種主要系統的權限管理方法。Linux虛擬機中的文件權限管理查看文件權限使用ls命令&#xff1a;ls -l 文件名輸出示例&#xff1a;-rwxr-xr-- 1 user group 1024 Ju…

圖像處理拉普拉斯算子

AI對話記錄&#xff0c;還沒有來得及仔細驗證和推導&#xff0c;目前只是記錄 當然可以&#xff01;我們來一步步推導拉普拉斯算子在旋轉變換下保持不變的數學過程。這里以二維情況為例&#xff0c;最直觀也最常見。&#x1f9ee; 拉普拉斯算子旋轉不變性的推導&#xff08;二維…

React ahooks——副作用類hooks之useThrottleEffect

useThrottleEffect 是 ahooks 提供的節流版 useEffect&#xff0c;它在依賴項變化時執行副作用函數&#xff0c;但會限制執行頻率。一、基本語法useThrottleEffect(effect: React.EffectCallback,deps?: React.DependencyList,options?: Options )二、參數詳解2.1. effect (必…

【建模與仿真】融合畫像約束和潛在特征的深度推薦算法

導讀&#xff1a; 基于深度學習的推薦算法已成為推薦系統領域的研究趨勢。然而&#xff0c;大多數現有工作僅考慮單一的用戶與物品交互數據&#xff0c;限制了算法的預測性能。本文提出一種畫像約束的編碼方式&#xff0c;并融合隱因子模型中的潛在特征&#xff0c;豐富了推薦…