国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Linux[find命令]-根據(jù)路徑和條件搜索指定文件并刪除

這篇具有很好參考價值的文章主要介紹了Linux[find命令]-根據(jù)路徑和條件搜索指定文件并刪除。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、find命令簡介

find命令:用于根據(jù)給定的路徑和條件查找相關(guān)文件或目錄,參數(shù)靈活方便,且支持正則表達式,結(jié)合管道符后能夠?qū)崿F(xiàn)更加復(fù)雜的功能。

基本語法格式:find pathname -options 搜索內(nèi)容 [其他選項]

  • pathname:用來指定搜索路徑。
  • options:用來指定搜索內(nèi)容。
  • 搜索內(nèi)容:用來指定搜索內(nèi)容,支持正則表達式。
  • 其他選項:
    • -print選項:將find命令匹配的文件輸出到標(biāo)準(zhǔn)輸出。
    • -exec選項:進一步處理搜索結(jié)果。

find命令通常進行的是從根目錄(/)開始的全盤搜索,不建議過大路徑的搜索范圍,會消耗較大的系統(tǒng)資源,導(dǎo)致服務(wù)器壓力過大。

常用 options參數(shù):

linux刪除查找到的文件,# Linux,Linux-find命令,find命令-搜索指定文件

二、常用 options參數(shù)搜索

[root@centos7 temp2]# tree /usr/local/temp2/
/usr/local/temp2/
├── 2023-10-09
│   ├── 10
│   │   └── Test1.log
│   └── test1.log
├── 2023-10-10
│   └── test1.log
├── test.log
└── Test.log

3 directories, 5 files

1、按文件名搜索

options參數(shù):

  • -name:按文件名搜索,區(qū)分文件名大小寫
  • -iname:按文件名搜索,不區(qū)分文件名大小寫
  • -inum: 按inode號搜索

(1)-name和-iname

Linux 中的文件名是區(qū)分大小寫的。

[root@centos7 temp2]# find /usr/local/temp2/ -name test.log
/usr/local/temp2/test.log
[root@centos7 temp2]# find ./ -iname test.log
./test.log
./Test.log

(2)-inum

每個文件都有 inode 號,如果我們知道 inode 號,則也可以按照 inode 號來搜索文件。

# ls -i 顯示文件的inode屬性信息
[root@centos7 temp2]# ll -i ./
total 8
237180303 drwxr-xr-x 3 root root 33 Oct 10 14:21 2023-10-09
252355940 drwxr-xr-x 2 root root 23 Oct 10 14:19 2023-10-10
169322632 -rw-r--r-- 1 root root 32 Oct 10 14:19 test.log
169322631 -rw-r--r-- 1 root root 32 Oct 10 14:19 Test.log
[root@centos7 temp2]# find ./ -inum 169322632
./test.log
[root@centos7 temp2]# find /usr/local/temp2/ -inum 169322632
/usr/local/temp2/test.log

2、按文件類型搜索

options參數(shù):

  • -type d:查找目錄
  • -type f:查找普通文件
  • -type l:查找軟鏈接文件

示例如下:

[root@centos7 temp2]# find /usr/local/temp2/ -type f
/usr/local/temp2/2023-10-09/test1.log
/usr/local/temp2/2023-10-09/10/Test1.log
/usr/local/temp2/2023-10-10/test1.log
/usr/local/temp2/test.log
/usr/local/temp2/Test.log
[root@centos7 temp2]# find /usr/local/temp2/ -type d
/usr/local/temp2/
/usr/local/temp2/2023-10-09
/usr/local/temp2/2023-10-09/10
/usr/local/temp2/2023-10-10

3、基于目錄深度搜索

find 命令是遞歸遍歷查找文件夾,列出當(dāng)前目錄及子目錄下所有文件。

options參數(shù):

  • -maxdepth LEVELS:按最大深度顯示。
  • -mindepth LEVELS:按最少深度顯示。

示例如下:

# 搜索目錄下面最多1個子目錄深度的所有目錄
[root@centos7 temp2]# find /usr/local/temp2/ -maxdepth 1 -type d
/usr/local/temp2/
/usr/local/temp2/2023-10-09
/usr/local/temp2/2023-10-10
# 搜索目錄下面最多1個子目錄深度的所有文件
[root@centos7 temp2]# find /usr/local/temp2/ -maxdepth 1 -type f
/usr/local/temp2/test.log
/usr/local/temp2/Test.log
# 搜索目錄下面最少1個子目錄深度的所有文件
[root@centos7 temp2]# find /usr/local/temp2/ -mindepth 1 -type f
/usr/local/temp2/2023-10-09/test1.log
/usr/local/temp2/2023-10-09/10/Test1.log
/usr/local/temp2/2023-10-10/test1.log
/usr/local/temp2/test.log
/usr/local/temp2/Test.log
# 搜索目錄下面最少2個子目錄深度的所有文件
[root@centos7 temp2]# find /usr/local/temp2/ -mindepth 2 -type f
/usr/local/temp2/2023-10-09/test1.log
/usr/local/temp2/2023-10-09/10/Test1.log
/usr/local/temp2/2023-10-10/test1.log

4、按修改時間搜索

options參數(shù):

  • -atime[±]時間:按文件訪問時間搜索,記錄文件最后一次被訪問的時間。
  • -mtime[±]時間:按文件數(shù)據(jù)修改時間搜索,當(dāng)對這個文件內(nèi)容進行修改后,modify顯示的時間就會更新一次。
  • -ctime[±]時間:按文件狀態(tài)修改時間搜索,當(dāng)文件內(nèi)容、更改文件權(quán)限,鏈接屬性時隨文件inode更改而改變的時間。

以-mtime來舉例 “[±]” 時間的含義:

  • +5:代表 6天前修改的文件。
  • 5:代表前 5-6天的那一天修改的文件。
  • -5:代表最近 5天內(nèi)修改的文件。

示例如下:

# 查找 6天前修改的內(nèi)容
[root@centos7 temp2]# find /usr/local/temp2 -mtime +5
# 查找 5~6 天那一天修改的內(nèi)容
[root@centos7 temp2]# find /usr/local/temp2 -mtime 5
# 查找 5天內(nèi)修改的文件,最大深度為1
[root@centos7 temp2]# find /usr/local/temp2 -maxdepth 1 -type f -mtime -5
/usr/local/temp2/test.log
/usr/local/temp2/Test.log
# 查找最近 5天內(nèi)修改的目錄,最大深度為1
[root@centos7 temp2]# find /usr/local/temp2 -maxdepth 1 -type d -mtime -5
/usr/local/temp2
/usr/local/temp2/2023-10-09
/usr/local/temp2/2023-10-10

5、按文件大小搜索

options參數(shù):

  • -size[±]大?。喊凑罩付ù笮∷阉魑募?。

其中:

  • +:表示搜索比指定大小還要大的文件。
  • -:表示搜索比指定大小還要小的文件。

find 默認的單位是512Byte,如果單位為b或不寫單位,則按照 512Byte搜索,其他大小搜索單位如下:

'c' for bytes
 #搜索單位是c,按照字節(jié)搜索
'w' for two-byte words
#搜索單位是w,按照雙字節(jié)(中文)搜索
'k'for Kilobytes (units of 1024 bytes)
#按照KB單位搜索,必須是小寫的k
'M' for Megabytes (units of 1048576 bytes)
#按照MB單位搜索,必須是大寫的M
'G' for Gigabytes (units of 1073741824 bytes)
#按照GB單位搜索,必須是大寫的G

示例如下:

# 查找最近 5天內(nèi)修改的文件,最大深度為1,size小于2M
[root@centos7 temp2]# find /usr/local/temp2 -maxdepth 1 -type f -mtime -5 -size -2M
/usr/local/temp2/test.log
/usr/local/temp2/Test.log

三、其他選項

1、-print選項

基本語法格式:find pathname -options 搜索內(nèi)容 -print

-print選項:將find命令匹配的文件輸出到標(biāo)準(zhǔn)輸出到屏幕。

[root@centos7 temp2]# find /usr/local/temp2 -maxdepth 1 -type f -mtime -5 -print
/usr/local/temp2/test.log
/usr/local/temp2/Test.log
[root@centos7 temp2]# find /usr/local/temp2 -maxdepth 1 -type d -mtime -5 -print
/usr/local/temp2
/usr/local/temp2/2023-10-09
/usr/local/temp2/2023-10-10

2、-exec選項

基本語法格式:find pathname -options 搜索內(nèi)容 -exec 命令2 {} ;

-exec選項:作用其實是把 find 命令的結(jié)果交給由"-exec"調(diào)用的 命令2 來處理。

  • “{}”:代表 find 命令的査找結(jié)果,
  • “;”:\ 做轉(zhuǎn)義,;是結(jié)束符。

注意:這里的“{}”和“;”是標(biāo)準(zhǔn)格式,只要執(zhí)行”-exec"選項,這兩個符號必須完整書寫,并且{} 與 \之間有空格。

示例1:找到文件并打印 inode 號

[root@centos7 temp2]# find /usr/local/temp2 -type f -mtime -5 -exec ls -i {} \;
237180309 /usr/local/temp2/2023-10-09/test1.log
69506504 /usr/local/temp2/2023-10-09/10/Test1.log
252355944 /usr/local/temp2/2023-10-10/test1.log
169322632 /usr/local/temp2/test.log
169322631 /usr/local/temp2/Test.log

示例1:找到文件并刪除

[root@centos7 temp2]# find /usr/local/temp2 -maxdepth 1 -type f -mtime -5 -exec rm -rf {} \;
[root@centos7 temp2]# ls
2023-10-09  2023-10-10

3、-ok選項

基本語法格式:find pathname -options 搜索內(nèi)容 -ok 命令2 {} ;

-ok選項與"-exec"選項的作用基本一致,區(qū)別在于:

  • “-exec”的命令2會直接處理,而不詢問;
  • “-ok”的命令2 在處理前會先詢問用戶是否這樣處理,在得到確認命令后,用戶輸入y才會執(zhí)行。

示例:找到目錄并詢問用戶是否刪除。

[root@centos7 temp2]# find /usr/local/temp2 -mindepth 2 -type f -mtime -5 -print
/usr/local/temp2/2023-10-09/test1.log
/usr/local/temp2/2023-10-09/10/Test1.log
/usr/local/temp2/2023-10-10/test1.log
[root@centos7 temp2]# find /usr/local/temp2 -mindepth 2 -type d -mtime -5 -print
/usr/local/temp2/2023-10-09/10
# 找到目錄并詢問用戶是否刪除。# 需要用戶輸入y,才會執(zhí)行
[root@centos7 temp2]# find /usr/local/temp2 -mindepth 2 -type d -mtime -5 -ok rm -rf {} \;
< rm ... /usr/local/temp2/2023-10-09/10 > ? y  
[root@centos7 temp2]# find /usr/local/temp2 -mindepth 2 -type d -mtime -5 -print
[root@centos7 temp2]# find /usr/local/temp2 -mindepth 2 -type f -mtime -5 -print
/usr/local/temp2/2023-10-09/test1.log
/usr/local/temp2/2023-10-10/test1.log

參考文章:

  • find命令 – 根據(jù)路徑和條件搜索指定文件:https://www.linuxcool.com/find

– 求知若饑,虛心若愚。文章來源地址http://www.zghlxwxcb.cn/news/detail-751686.html

到了這里,關(guān)于Linux[find命令]-根據(jù)路徑和條件搜索指定文件并刪除的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Linux 搜索文件中find和grep命令的區(qū)別

    在使用linux時,經(jīng)常需要進行文件查找。其中查找的命令主要有find和grep。兩個命令是有區(qū)的。 (1)find命令是根據(jù)文件的屬性進行查找,如文件名,文件大小,所有者,所屬組,是否為空,訪問時間,修改時間等。 (2)grep是根據(jù)文件的內(nèi)容進行查找,會對文件的每一行按照給定

    2024年02月16日
    瀏覽(234)
  • Linux如何使用find命令搜索到自己想要的文件呢?

    文件搜素專欄全部文章 如何使用find命令搜索到自己想要的文件 ack 命令的基本用法詳解 ag命令的使用詳解 在 Linux 中查找文件名包含某個的文件,可以使用? find ?命令來實現(xiàn)。 find ?命令可以在指定目錄下遞歸搜索文件,并根據(jù)指定的條件進行過濾。 下面是使用? fi

    2024年02月03日
    瀏覽(113)
  • Linux 下使用 tar 命令打包指定目錄下的所有文件,不包含路徑方法

    一,問題描述 例如:需要打包/data/android_data/VMRK02ejyijtyww20 文件夾到/data/testtar/目錄下 一般我們使用命令如下命令 當(dāng)我們解VMRK02ejyijtyww20.tar壓縮包后發(fā)現(xiàn),把路徑也打包進去了, 即/data/android_data/VMRK02ejyijtyww20;而大多數(shù)情況,我們解壓后只需要的是VMRK02ejyijtyww20文件夾 二、打包

    2024年02月16日
    瀏覽(32)
  • linux find命令搜索日志內(nèi)容

    linux find命令搜索日志內(nèi)容 加上-a 是為了不報查出 binary 的錯 服務(wù)器會返回 包含所查字符的整行日志信息

    2024年02月07日
    瀏覽(91)
  • linux根據(jù)文件名查找文件路徑

    linux根據(jù)文件名查找文件路徑

    ?舉個例子:

    2024年02月17日
    瀏覽(92)
  • Linux find 文件目錄搜索工具

    目錄 前言 基本用法 查找文件通配符匹配 查找文件并打印到標(biāo)準(zhǔn)輸出 查找文件并刪除 根據(jù)文件大小查找 根據(jù)文件修改時間查找 查找空文件或目錄 查找文件類型 find 是一個在Linux系統(tǒng)中非常強大和靈活的文件搜索工具。它用于在文件系統(tǒng)中查找文件和目錄,并可以執(zhí)行各種

    2024年02月08日
    瀏覽(199)
  • linux根據(jù)服務(wù)名稱查服務(wù)文件夾路徑

    ps -ef |grep java| grep -v grep |?awk \\\'{ print $2 }\\\' -e?? 顯示所有進程。 -f??? 全格式。 grep -v grep是在Linux系統(tǒng)的某些時刻下查看進程的命令,它的作用是排除grep進程本身。 啟動: #!/usr/bin/bash PID=$(ps -ef | grep serverName?| grep -v grep | awk \\\'{ print $2 }\\\') if [ -z \\\"$PID\\\" ]; then ?? ?echo Application i

    2024年01月17日
    瀏覽(18)
  • jar 命令啟動java 指定配置文件路徑 jar如何啟動

    jar 命令啟動java 指定配置文件路徑 jar如何啟動

    一、各種啟動方式 1.java -jar # 例子 java -jar test.jar 1. 2. 這是最簡單的啟動方式,同時弊端也是很多的。 弊端1:exit 退出終端會導(dǎo)致java進程中斷。 弊端2:ctrl+c 退出啟動展示頁會導(dǎo)致java進程中斷。 弊端3:直接關(guān)閉終端會導(dǎo)致java進程中斷(啟動時和啟動完關(guān)閉都會導(dǎo)致java進程終

    2024年02月04日
    瀏覽(18)
  • uniApp h5項目通過命令行打包,并生成指定路徑、文件名稱

    uniApp h5項目通過命令行打包,并生成指定路徑、文件名稱

    第一步:采用hbuilder新建一個項目 第二部:通過cli新建一個項目 創(chuàng)建命令: 創(chuàng)建成功之后先運行一下項目,如果啟動失敗 Error: Cannot find module ‘webpack/lib/RuleSet‘ 我們將hb的項目作為基礎(chǔ) 回到主題,將hb項目作為基礎(chǔ), 第一步:新建src文件夾,將以下文件放入src文件夾中 ?第

    2024年02月07日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包