linux中文本查找命令,Linux常用的文本查找命令 find

一、常用的文本查找命令

grep、egrep命令

grep:文本搜索工具,根據用戶指定的文本模式對目標文件進行逐行搜索,先是能夠被模式匹配到的行。后面跟正則表達式,讓grep工具相當強大。-E之后還支持擴展的正則表達式。

# grep ?[options] ?'PATTERN' ?file ...

--color=auto:高亮顯示被匹配的關鍵字

-v:反向

-o:僅顯示被模式匹配的字串,而非整行

- i:不區分大小寫

-E:支持擴展的正則表達式

-A+n:僅顯示被匹配到的行和其上n行

-B+n:僅顯示被匹配到的行和其下n行

-C+n:僅顯示被匹配到的行和其上、下n行

# egrep ?[options] ?'PATTERN' ?file ...

選項和grep相同,egrep=grep -E ?,這里不再繼續說明。

locate命令

locate:其實是“find -name”的另一種寫法,但是要比后者快得多,原因在于它不搜索具體目錄,而是搜索一個數據庫(/var/lib/locatedb),這個數據庫中含有本地所有文件信息。Linux系統自動創建這個數據庫,并且每天自動更新一次,所以使用locate命令查不到最新變動過的文件。為了避免這種情況,可以在使用locate之前,先使用updatedb命令,手動更新數據庫。

find命令

find:實時查找,精確匹配,速度略慢

#find ?[options] ?[查找路徑] ?[查找條件] ?[處理動作]

默認:查找路徑:當前目錄

查找條件:查找指定路徑下的所有文件

處理動作:顯示在標準輸出上

二、find命令詳解

(一)、查找條件

-name ?"文件名稱":支持文件名通配

-iname "文件名稱":支持文件名通配,不區分大小寫

-user ?"用戶名":根據屬主查找

-group ?"組名":根據屬組查找

-uid ? ?"UID":根據UID查找

-gid ? ?"GID":根據GID查找

-nouser:查找沒有屬主的文件

-nogroup:查找沒有屬組的文件

◆當一個用戶被刪除,那么該用戶的文件就會變成沒有屬主或屬組的文件

(二)、組合條件

-a:和與相同,同時滿足

-o:與或相同,滿足其一皆可

-not、!:與非相同,取反

-type:根據文件類型查找

f:普通文件

d:目錄

b:塊設備

c:字符設備

l:符號鏈接文件

p:命令管道工具

s:套接字文件

根據文件大小查找

-size ?[+|-]單位

+2M:大于2M的

-2M:小于1M的

2M:1.1~2M的

常用單位:k、M、G

例:大于2M的

# find -size +2M

根據時間戳查找

以天為單位(tim

-atime ? [+|-]n:被訪問的n天

-mtime ?[+|-]n:被修改的n天

-ctime ? [+|-]n:被創建的n天

+2:大于3天的

- 2:小于2天的

2:2天到3天的

以分鐘為單位(min)

-amin ? [+|-]n:被訪問的n分鐘

-mmin ?[+|-]n:被修改的n分鐘

-cmin ? ?[+|-]n:被創建的n分鐘

+2:大于3分鐘

-2:小于2分鐘

2:2分鐘到3分鐘

根據權限查找

-perm ?[+|-]權限

MODE:精確匹配

+MODE:任何一類用戶的任何一位權限匹配,常用語查找某類用戶的特點權限是否存在

-MODE:每類用戶的任何一位都匹配,每類用戶的指定要檢查的權限都匹配

(三)、處理動作

-print:打印在標準輸出上

-ls:以長格式輸出各文件信息

-exec COMMAND\:對查找的文件執行制定的命令

-ok COMMAND\:交互式的-exec

find把查找到的文件一次性的傳遞給-exec所指定的命令

如果查到到的是多個文件要加{},{}是占位符,表示接受前面find查找的文件,并對文件依次執行動作

格式: find -exec {} \;

例:# find -iname *.sh -exec chmod a-x {} \;

xargs命令

find|xargs COMMAND 一次性接受一批文件,通過管道直接修改

例:# find -iname text.sh | xargs chmod a+x

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

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

相關文章

分布與并行計算—日志挖掘(Java)

日志挖掘——處理數據、計費統計 1、讀取附件中日志的內容,找出自己學號停車場中對應的進出車次數(in/out配對的記錄數,1條in、1條out,視為一個車次,本日志中in/out為一一對應,不存在缺失某條進或出記錄&a…

《人人都該買保險》讀書筆記

內容目錄: 1.你必須知道的保險知識 2.家庭理財的必需品 3.保障型保險產品 4.儲蓄型保險產品 5.投資型保險產品 6.明明白白買保險 現在我所在的公司Manulife是一家金融保險公司,主打業務就是保險,因此我需要熟悉一下保險的基礎知識&#xff0c…

Linux下查看txt文檔

當我們在使用Window操作系統的時候,可能使用最多的文本格式就是txt了,可是當我們將Window平臺下的txt文本文檔復制到Linux平臺下查看時,發現原來的中文所有變成了亂碼。沒錯, 引起這個結果的原因就是兩個平臺下,編輯器…

如何擊敗騰訊_擊敗股市

如何擊敗騰訊個人項目 (Personal Proyects) Note from Towards Data Science’s editors: While we allow independent authors to publish articles in accordance with our rules and guidelines, we do not endorse each author’s contribution. You should not rely on an…

滑塊 組件_組件制作:如何使用鏈接的輸入創建滑塊

滑塊 組件by Robin Sandborg羅賓桑德伯格(Robin Sandborg) 組件制作:如何使用鏈接的輸入創建滑塊 (Component crafting: how to create a slider with a linked input) Here at Stacc, we’re huge fans of React and the render-props pattern. When it came time…

配置靜態IPV6 NAT-PT

一.概述: IPV6 NAT-PT( Network Address Translation - Port Translation)應用與ipv4和ipv6網絡互訪的情況,根據參考鏈接配置時出現一些問題,所以記錄下來。參考鏈接:http://www.cisco.com/en/US/tech/tk648/tk361/technologies_c…

linux 線程與進程 pid,linux下線程所屬進程號問題

這一段看《unix環境高級編程》,一個關于線程的小例子。#include#include#includepthread_t ntid;void printids(const char *s){pid_t pid;pthread_t tid;pidgetpid();tidpthread_self();printf("%s pid %u tid %u (0x%x)n",s,(unsigned int)pid,(unsigne…

python3虛擬環境中解決 ModuleNotFoundError: No module named '_ssl'

前提是已經安裝了openssl 問題 當我在python3虛擬環境中導入ssl模塊時報錯,報錯如下: (py3) [rootlocalhost Python-3.6.3]# python3 Python 3.6.3 (default, Nov 19 2018, 14:18:18) [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux Type "help…

python 使用c模塊_您可能沒有使用(但應該使用)的很棒的Python模塊

python 使用c模塊by Adam Goldschmidt亞當戈德施密特(Adam Goldschmidt) 您可能沒有使用(但應該使用)的很棒的Python模塊 (Awesome Python modules you probably aren’t using (but should be)) Python is a beautiful language, and it contains many built-in modules that…

分布與并行計算—生產者消費者模型實現(Java)

在實際的軟件開發過程中,經常會碰到如下場景:某個模塊負責產生數據,這些數據由另一個模塊來負責處理(此處的模塊是廣義的,可以是類、函數、線程、進程等)。產生數據的模塊,就形象地稱為生產者&a…

通過Xshell登錄遠程服務器實時查看log日志

主要想總結以下幾點: 1.如何使用生成密鑰的方式來登錄Xshell連接遠端服務器 2.在遠程服務器上如何上傳和下載文件(下載log文件到本地) 3.如何實時查看log,提取錯誤信息 一. 使用生成密鑰的方式來登錄Xshell連接遠端服務器 ssh登錄…

如何將Jupyter Notebook連接到遠程Spark集群并每天運行Spark作業?

As a data scientist, you are developing notebooks that process large data that does not fit in your laptop using Spark. What would you do? This is not a trivial problem.作為數據科學家,您正在開發使用Spark處理筆記本電腦無法容納的大數據的筆記本電腦…

是銀彈嗎?業務基線方法論

Fred.Brooks在1987年就提出:沒有銀彈。沒有任何一項技術或方法可以能讓軟件工程的生產力在十年內提高十倍。 我無意挑戰這個理論,只想討論一個方案,一個可能大幅提高業務系統開發效率的方案。 方案描述 我管這個方案叫做“由基線擴展…

linux core無權限,linux – 為什么編輯core_pattern受限制?

當我試圖為故意崩潰的程序生成核心文件時,最初的核心文件生成似乎被abrt-ccpp阻礙了.所以我嘗試用vim手動編輯/ proc / sys / kernel / core_pattern:> sudo vim /proc/sys/kernel/core_pattern當我試圖保存文件時,vim報告了這個錯誤:"/proc/sys…

nsa構架_我如何使用NSA的Ghidra解決了一個簡單的CrackMe挑戰

nsa構架by Denis Nu?iu丹尼斯努尤(Denis Nu?iu) 我如何使用NSA的Ghidra解決了一個簡單的CrackMe挑戰 (How I solved a simple CrackMe challenge with the NSA’s Ghidra) Hello!你好! I’ve been playing recently a bit with Ghidra, which is a reverse engi…

分布與并行計算—生產者消費者模型隊列(Java)

在生產者-消費者模型中&#xff0c;在原有代碼基礎上&#xff0c;把隊列獨立為1個類實現&#xff0c;通過公布接口&#xff0c;由生產者和消費者調用。 public class Consumer implements Runnable {int n;CountDownLatch countDownLatch;public Consumer(BlockingQueue<In…

python 日志內容提取

問題&#xff1a;如下&#xff0c;一個很大的日志文件&#xff0c;提取 start: 到 end: 標志中間的內容 日志文件a.log xxxxx yyyyy start: start: hahahaha end: start: hahahahha end: ccccccc kkkkkkk cdcdcdcd start: hahahaha end: code import reisfindFalse with open(&…

同一服務器部署多個tomcat時的端口號修改詳情

2019獨角獸企業重金招聘Python工程師標準>>> 同一服務器部署多個tomcat時&#xff0c;存在端口號沖突的問題&#xff0c;所以需要修改tomcat配置文件server.xml&#xff0c;以tomcat7為例。 首先了解下tomcat的幾個主要端口&#xff1a;<Connector port"808…

linux優盤驅動目錄,Linux U盤加載陣列卡驅動步驟(.dd或img).doc

Linux U盤加載陣列卡驅動步驟(.dd或img)如果沒有Linux的機器,可以使用安裝光盤的Linux環境&#xff1a;將?U?盤完全慢速格式化&#xff0c;將驅動拷貝到U盤&#xff0c;將U盤插在服務器上&#xff0c;用Linux安裝光盤第一張啟動到圖形安裝界面&#xff0c;按Ctrl&#xff0b;…

第一章-從雙向鏈表學習設計

鏈表學習鏈表是一種動態的數據結構使用節點作為鏈表的基本單位存儲在節點包括數據元素和節點指針一個完整的數據鏈表應包括轉載于:https://www.cnblogs.com/cjxltd/p/7125747.html