一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Linux|Centos|Ubuntu|系統進程|Fedora|注冊表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服務器之家 - 服務器系統 - Linux - Linux 命令find之查找文件的示例

Linux 命令find之查找文件的示例

2022-03-02 17:03維C果糖 Linux

這篇文章主要介紹了Linux 命令find之查找文件的示例,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

在 linux 命令中,find用于在指定目錄下查找文件。任何位于參數之前的字符串都將被視為欲查找的目錄名,其支持按名稱查找、按正則表達式查找、按文件大小查找、按文件權限查找等多種查詢方式。如果在使用該命令時,不設置任何參數,則find命令將在當前目錄下查找子目錄與文件,并且將查找到的子目錄和文件全部進行顯示。

語法:find + 目標目錄(路徑) + <選項> + 參數

常用選項列表

 

選項 含義
-perm <權限數值> 查找符合指定的權限數值的文件或目錄
-type <文件類型> 只尋找符合指定的文件類型的文件
-name <范本樣式> 指定字符串作為尋找文件或目錄的范本樣式
-expty 尋找文件大小為 0 byte 的文件,或目錄下沒有任何子目錄或文件的空目錄
-ls 假設find指令的回傳值為ture,就將文件或目錄名稱列出到標準輸出
-maxdepth <目錄層級> 設置最大目錄層級
-mindepth <目錄層級> 設置最小目錄層級
-exec <執行指令> 假設find指令的回傳值為true,就執行該指令
-ok <執行指令> 此參數的效果和指定-exec類似,但在執行指令之前會先詢問用戶,若回答y或y,則放棄執行命令

 

示例

首先,給出演示使用的文件結構:

Linux 命令find之查找文件的示例

示例 1:查找當前目錄及其子目錄下所有文件和文件夾

?
1
find .

Linux 命令find之查找文件的示例

示例 2:在/testlinux目錄下查找以.txt結尾的文件名

?
1
2
// 需要書寫完整的路徑
find /tmp/cg/testlinux -name "*.txt"

Linux 命令find之查找文件的示例

示例 3:組合查找文件名以file1開頭(與、或、非)file2開頭的文件

?
1
2
3
4
5
6
7
8
9
10
11
12
/**
 * 組合查找語法:
 * -a    與(取交集)
 * -o    或(取并集)
 * -not   非(同 !)
 * !     非(同 not)
 */
 
find . -name "file1*" -a -name "file2*"
find . -name "file1*" -o -name "file2*"
find . -name "file1*" -not -name "file2*"
find . -name "file1*" ! -name "file2*"

Linux 命令find之查找文件的示例

示例 4:根據文件類型進行搜索

?
1
2
3
4
5
/**
 * 查找當前目錄及所有子目錄下的普通文件
 */
 
find . -type f

Linux 命令find之查找文件的示例

示例 5:基于目錄深度進行搜索

?
1
2
3
4
5
6
7
8
9
10
11
/**
 * 限制最大深度為 3
 */
 
find . -maxdepth 3 -type f
 
/**
 * 限制最大深度為 2
 */
 
find . -maxdepth 2 -type f

Linux 命令find之查找文件的示例

示例 6:基于文件權限進行搜索

?
1
2
3
4
5
6
7
8
9
10
11
/**
 * 搜索權限為 777 的文件
 */
 
find . -type f -perm 777
 
/**
 * 搜索 .txt 格式且權限不為 777 的文件
 */
 
find . -type f -name "*.txt" ! -perm 777

Linux 命令find之查找文件的示例

示例 7:借助-exec命令,將當前目錄及子目錄下所有.txt格式的文件以file:文件名的形式打印出來

?
1
find . -type f -name "*.txt" -exec printf "file: %s\n" {} \;

Linux 命令find之查找文件的示例

示例 8:借助-exec命令,將當前目錄及子目錄下所有 3 天前的.txt格式的文件復制一份到old目錄

?
1
find . -type f -mtime +3 -name "*.txt" -exec cp {} old \;

Linux 命令find之查找文件的示例

文件類型參數列表

 

文件類型參數 含義
f 普通文件
l 符號連接
d 目錄
c 字符設備
b 塊設備
s 套接字
p fifo

 

文件大小單元列表

 

文件大小單元 含義
b 塊(512 字節)
c 字節
w 字(2 字節)
k 千字節
m 兆字節
g 吉字節

 

選項列表

 

選項 含義
-amin <分鐘> 查找在指定時間曾被存取過的文件或目錄,單位以分鐘計算
-atime <24小時數> 查找在指定時間曾被存取過的文件或目錄,單位以 24 小時計算
-cmin <分鐘> 查找在指定時間之時被更改過的文件或目錄
-ctime <24小時數> 查找在指定時間之時被更改的文件或目錄,單位以 24 小時計算
-anewer <參考文件或目錄> 查找其存取時間較指定文件或目錄的存取時間更接近現在的文件或目錄
-cnewer <參考文件或目錄> 查找其更改時間較指定文件或目錄的更改時間更接近現在的文件或目錄
-daystart 從本日開始計算時間
-depth 從指定目錄下最深層的子目錄開始查找
-expty 尋找文件大小為 0 byte 的文件,或目錄下沒有任何子目錄或文件的空目錄
-exec <執行指令> 假設find指令的回傳值為true,就執行該指令
-false 將find指令的回傳值皆設為false
-fls <列表文件> 此參數的效果和指定-ls參數類似,但會把結果保存為指定的列表文件
-follow 排除符號連接
-fprint <列表文件> 此參數的效果和指定-print參數類似,但會把結果保存成指定的列表文件
-fprint0 <列表文件> 此參數的效果和指定-print0參數類似,但會把結果保存成指定的列表文件
-fprintf <列表文件> <輸出格式> 此參數的效果和指定-printf參數類似,但會把結果保存成指定的列表文件
-fstype <文件系統類型> 只尋找該文件系統類型下的文件或目錄
-gid <群組識別碼> 查找符合指定群組識別碼的文件或目錄
-group <群組名稱> 查找符合指定群組名稱的文件或目錄
-help或——help 在線幫助
-name <范本樣式> 指定字符串作為尋找文件或目錄的范本樣式
-iname <范本樣式> 此參數的效果和指定-name參數類似,但忽略字符大小寫的差別
-ilname <范本樣式> 此參數的效果和指定-lname參數類似,但忽略字符大小寫的差別
-inum <inode編號> 查找符合指定的inode編號的文件或目錄
-path <范本樣式> 指定字符串作為尋找目錄的范本樣式
-ipath <范本樣式> 此參數的效果和指定-path參數類似,但忽略字符大小寫的差別
-iregex <范本樣式> 此參數的效果和指定-regexe參數類似,但忽略字符大小寫的差別
-links <連接數目> 查找符合指定的硬連接數目的文件或目錄
-ls 假設find指令的回傳值為ture,就將文件或目錄名稱列出到標準輸出
-maxdepth <目錄層級> 設置最大目錄層級
-mindepth <目錄層級> 設置最小目錄層級
-mmin <分鐘> 查找在指定時間曾被更改過的文件或目錄,單位以分鐘計算
-mount 此參數的效果和指定-xdev相同
-mtime <24小時數> 查找在指定時間曾被更改過的文件或目錄,單位以 24 小時計算
-newer <參考文件或目錄> 查找其更改時間較指定文件或目錄的更改時間更接近現在的文件或目錄
-nogroup 找出不屬于本地主機群組識別碼的文件或目錄
-noleaf 不去考慮目錄至少需擁有兩個硬連接存在
-nouser 找出不屬于本地主機用戶識別碼的文件或目錄
-ok <執行指令> 此參數的效果和指定-exec類似,但在執行指令之前會先詢問用戶,若回答y或y,則放棄執行命令
-perm <權限數值> 查找符合指定的權限數值的文件或目錄
-print 假設find指令的回傳值為ture,就將文件或目錄名稱列出到標準輸出,格式為每列一個名稱,每個名稱前皆有./字符串
-print0 假設find指令的回傳值為ture,就將文件或目錄名稱列出到標準輸出,格式為全部的名稱皆在同一行
-printf <輸出格式> 假設find指令的回傳值為ture,就將文件或目錄名稱列出到標準輸出,格式可以自行指定
-prune 不尋找字符串作為尋找文件或目錄的范本樣式
-regex <范本樣式> 指定字符串作為尋找文件或目錄的范本樣式
-size <文件大小> 查找符合指定的文件大小的文件
-true 將find指令的回傳值皆設為true
-type <文件類型> 只尋找符合指定的文件類型的文件
-uid <用戶識別碼> 查找符合指定的用戶識別碼的文件或目錄
-used <日數> 查找文件或目錄被更改之后在指定時間曾被存取過的文件或目錄,單位以日計算
-user <擁有者名稱> 查找符和指定的擁有者名稱的文件或目錄
-version或——version 顯示版本信息
-xdev 將范圍局限在先行的文件系統中
-xtype <文件類型> 此參數的效果和指定-type參數類似,差別在于它針對符號連接檢查

 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:http://blog.csdn.net/qq_35246620/article/details/79104520

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 18未年禁止免费观看 | 精品香蕉99久久久久网站 | 91久久精品视频 | 国产一级在线观看视频 | 日本片免费观看一区二区 | 日韩成人一级 | 亚洲国产精品自在自线观看 | 色99在线| 加勒比一本大道香蕉在线视频 | 999国产高清在线精品 | 图片专区亚洲欧美另类 | 国产一区二区三区久久精品小说 | 国产青草视频在线观看免费影院 | 亚洲福利精品电影在线观看 | 恩不要好大好硬好爽3p | 国产亚洲高清国产拍精品 | 91一区二区在线观看精品 | 欧美亚洲综合另类 | 日韩ab| 无码骚夜夜精品 | 毛片在线观看网站 | 任我行视频在线观看国语 | 日本xxxⅹ69xxxx护士 | 国产a不卡片精品免费观看 国产aaa伦理片 | 性欧美sexovideotv| 99er在线视频| 国产91精品露脸国语对白 | 性xxxx18学生第一次出血 | 日韩手机在线视频 | 日本大学生xxxxx69泡妞 | 久久久黄色片 | 亚洲春黄在线观看 | 好舒服好爽再快点视频 | 人阁色第四影院在线观看 | 男人吃奶动态图 | 午夜AV国产欧美亚洲高清在线 | 亚洲国产在线观看免费视频 | 果冻传媒在线播放观看228集 | 国内精品视频九九九九 | 国产亚洲欧美一区二区三区 | 高清视频一区二区三区 |