find 查找文件grep匹配數據

一、find介紹

1. find . -iname "*.txt"查找當前目錄下各個文件夾下的txt屬性的文件(i忽略大小寫)。

2.find . -type f 查找當前目錄下各個文件夾下的文件

3.find . -type d 查找當前目錄下各個文件夾下的目錄

4.find . -type f | xargs grep -ain -E "匹配字段" --colo=auto

?grep參數介紹-a 選項:以文本文件的形式處理二進制文件,-i 選項:讓搜索忽略大小寫,-n 選項:在輸出結果時,顯示匹配行的行號,-E正則匹配,--colo=auto匹配結果自帶顏色。

5.find -L ./ -path?./qt-creator-opensource-src-12.0.0/bin -prune -o -path ./qt-creator-opensource-src-12.0.0/coin -prune? -o -type f| xargs grep -ain -E "chen3feng" --color=auto

執行命令所在目錄有目錄qt-creator-opensource-src-12.0.0。

-path?./qt-creator-opensource-src-12.0.0/bin -prune

  • path 選項用于匹配文件路徑,./qt-creator-opensource-src-12.0.0/bin -prune 就是要匹配的路徑模式。這意味著只要遇到路徑是 ./qt-creator-opensource-src-12.0.0/bin -prune 的目錄,find 就會停止對它及其子目錄的搜索。
  • -prune 選項是告訴 find 命令,對匹配 -path 條件的目錄不要進行遍歷,也就是 “修剪” 掉這部分目錄樹,避免在指定目錄及其子目錄中繼續查找,以此提高查找效率。在這個例子里,./qt-creator-opensource-src-12.0.0/bin -prune 目錄及其內部的所有文件和子目錄都會被跳過

-o:這是一個邏輯運算符,代表 “或(or)” 的關系,連接前后兩個查找條件

-path ./qt-creator-opensource-src-12.0.0/coin -prune

同之前的命令一樣含義。

-type f-type 用于指定查找文件的類型,f 表示普通文件(file),也就是查找除了被 -prune 修剪掉的./qt-creator-opensource-src-12.0.0/bin 和 ./qt-creator-opensource-src-12.0.0/coin目錄及其子目錄之外的所有普通文件。

整體目錄結構如下圖:

6.find . -type f? \( -name "*json" -o -iname "*lists.txt" \) | xargs grep -ain "匹配項"

find 命令用于在當前目錄(.)及其子目錄下查找特定類型的文件并進行grep匹配。

  • 括號:括號\(`和`\)用于將多個條件組合在一起,讓它們作為一個整體來處理,形成更復雜的邏輯判斷。因為括號在 shell 中有特殊意義,所以需要用反斜杠\轉義,使其被當作普通字符傳遞給 find 命令。
  • -name "*json"-name 選項用于按文件名精確匹配,* 是通配符,代表任意字符序列,所以*json會匹配所有以.json為后綴的文件名。
  • -o:這是邏輯運算符 “或(or)”,連接前后兩個文件名匹配條件。
  • -iname "*lists.txt"-iname 選項與 -name 類似,也是匹配文件名,但 -iname 是忽略大小寫的,所以它會匹配所有名字是*lists.txt的文件,無論大小寫如何

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

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

相關文章

Mac上鴻蒙配置HDC報錯:zsh: command not found: hdc -v

這個問題困擾了好久,按照官方文檔去配置的,就是會一直報錯,沒有配置成功,主要原因是官網ide的路徑可能和你本地的ide的路徑不一致,因為官網的ide版本可能是最新的 一.先查找你本地的toolchains目錄在哪里,…

CS·GO搬磚流程詳細版

說簡單點,就是Steam買了然后BUFF上賣,或許大家都知道這點,但就是一些操作和細節問題沒那么明白。我相信,你看完這篇文章以后,至少會有新的認知。 好吧,廢話少說,直接上實操! 首先準…

“深入淺出”系列之FFmpeg:(1)音視頻開發基礎

我的音視頻開發大部分內容是跟著雷霄驊大佬學習的,所以筆記也是跟雷老師的博客寫的。 一、音視頻相關的基礎知識 首先播放一個視頻文件的流程如下所示: FFmpeg的作用就是將H.264格式的數據轉換成YUV格式的數據,然后SDL將YUV顯示到電腦屏幕上…

【Linux】Linux開發:GDB調試器與Git版本控制工具指南

Linux相關知識點可以通過點擊以下鏈接進行學習一起加油!初識指令指令進階權限管理yum包管理與vim編輯器GCC/G編譯器make與Makefile自動化構建 在 Linux 開發中,GDB 調試器和 Git 版本控制工具是開發者必備的利器。GDB 幫助快速定位代碼問題,G…

【設計模式-2】23 種設計模式的分類和功能

在軟件工程領域,設計模式是解決常見設計問題的經典方案。1994 年,Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides(四人幫,GoF)在《設計模式:可復用面向對象軟件的基礎》一書中系統性地總結了…

谷粒商城-高級篇完結-Sleuth+Zipkin 服務鏈路追蹤

1、基本概念和整合 1.1、為什么用 微服務架構是一個分布式架構,它按業務劃分服務單元,一個分布式系統往往有很多個服務單元。由于服務單元數量眾多,業務的復雜性,如果出現了錯誤和異常,很難去定位 。主要體現在&#…

小米智能啞鈴上市,代理 IP 視角下的智能健身新篇

在智能科技與健康生活深度融合的時代,小米以其敏銳的市場洞察力和強大的創新能力,不斷拓展智能生態版圖。米家智能啞鈴的發布,無疑是其在智能健身領域的又一重要舉措。而當我們從代理 IP 的獨特視角來審視這一產品,會發現其中蘊含…

基于Python的音樂播放器 畢業設計-附源碼73733

摘 要 本項目基于Python開發了一款簡單而功能強大的音樂播放器。通過該音樂播放器,用戶可以輕松管理自己的音樂庫,播放喜愛的音樂,并享受音樂帶來的愉悅體驗。 首先,我們使用Python語言結合相關庫開發了這款音樂播放器。利用Tkin…

實際開發中,常見pdf|word|excel等文件的預覽和下載

實際開發中,常見pdf|word|excel等文件的預覽和下載 背景相關類型數據之間的轉換1、File轉Blob2、File轉ArrayBuffer3、Blob轉ArrayBuffer4、Blob轉File5、ArrayBuffer轉Blob6、ArrayBuffer轉File 根據Blob/File類型生成可預覽的Base64地址基于Blob類型的各種文件的下載各種類型…

微信小程序中的 storage(本地存儲)和內存是兩個完全不同的存儲區域

這是一個非常關鍵且容易混淆的概念 既然 this.globalData.appId appId 是將 appId 存儲在內存中,為什么微信小程序中的 wx.getStorage 和 wx.setStorage(本地存儲)中沒有 appId,并且您提出了一個非常重要的疑問:stor…

【C++數據結構——查找】二叉排序樹(頭歌實踐教學平臺習題)【合集】

目錄😋 任務描述 相關知識 1. 二叉排序樹的基本概念 2. 二叉排序樹節點結構體定義 3. 創建二叉排序樹 4. 判斷是否為二叉排序樹 5. 遞歸查找關鍵字為 6 的結點并輸出查找路徑 6. 刪除二叉排序樹中的節點 測試說明 通關代碼 測試結果 任務描述 本關任務&a…

計算機網絡(第8版)第3章課后習題--透明傳輸

【3-11】 試分別討論以下各種情況在什么條件下是透明傳輸,在什么條件下不是透明傳 輸。(提示:請弄清什么是“透明傳輸”,然后考慮能否滿足其條件。) (1)普通的電話通信。 (2)互聯網提供的電子郵件服務。 解 答 : 透明傳輸是指在數據傳輸…

Linux(17)——使用 DNF 安裝和更新軟件包

目錄 一、使用 DNF 管理軟件包: 1、 DNF 查找軟件: 2、DNF 安裝軟件: 3、DNF 刪除軟件: 二、使用 DNF 管理軟件包組: 1、DNF 顯示組信息: 2、DNF 安裝組: 三、使用 DNF 查看事務歷史記錄…

基于32單片機的智能語音家居

一、主要功能介紹 以STM32F103C8T6單片機為控制核心,設計一款智能遠程家電控制系統,該系統能實現如下功能: 1、可通過語音命令控制照明燈、空調、加熱器、窗戶及窗簾的開關; 2、可通過手機顯示和控制照明燈、空調、窗戶及窗簾的開…

Qt 5.14.2 學習記錄 —— ? 新項目

文章目錄 1、創建2、查看代碼 ---- main.cpp3、查看代碼 ---- widgt.h4、查看代碼 ---- widgt.cpp和widget.ui5、查看代碼 ---- Empty.pro6、運行產生的中間文件 1、創建 左上角的文件,新建文件或項目。如果要寫一個GUI程序,應當選擇Application&#x…

linux wsl配置 redis遠程連接

? 1. 修改 Redis 配置文件 在 WSL 的 Redis 配置文件中,找到 redis.conf 或 /etc/redis/redis.conf 文件,編輯以下配置項: ?? 更新 bind 配置項 將 bind 127.0.0.1 ::1 修改為: bind 0.0.0.0這樣,Redis 將監聽所…

Transformer從零詳細解讀——DASOU講AI

1. 從全局角度概括Transformer transformer的任務是什么? 進一步細化 進一步細化,注意:每個encoder結構相同,參數不同;decoder同理 原論文中的圖如下: 2.Encoder 2.1 輸入部分 (1&#xff09…

ARM發布Armv9.5架構:邁向更強性能與靈活性的新時代

2024年11月30日,ARM正式發布了其最新的Armv9.5架構,這是Arm技術發展的又一重要里程碑。從表中信息來看,Armv9.5架構的發布標志著該公司的架構系列在性能、靈活性和可擴展性方面取得了進一步突破。本次發布不僅是技術上的提升,更是…

【Python運維】使用Python與Docker進行高效的容器化應用管理

《Python OpenCV從菜鳥到高手》帶你進入圖像處理與計算機視覺的大門! 解鎖Python編程的無限可能:《奇妙的Python》帶你漫游代碼世界 隨著容器化技術的廣泛應用,Docker已成為現代軟件開發與運維中不可或缺的工具。Docker容器提供了一種輕量級、可移植的方式來部署和管理應用…

分布式系統架構6:鏈路追蹤

這是小卷對分布式系統架構學習的第6篇文章,關于鏈路追蹤,之前寫過traceId的相關內容:https://juejin.cn/post/7135611432808218661,不過之前寫的太淺了,且不成系統,只是簡單的理解,今天來捋一下…