shell程式設計 find命令

2022-07-22 05:30:16 字數 1227 閱讀 6376

shell程式設計:find命令

find . 列出當前目錄以及子目錄下的所有檔案

find . -name  "11.png"找到當前目錄下名字為11.pngd的檔案

find .-name  「*.jpg」找到當前目錄下目錄所有的jpg檔案

find .-name"*.jpg" -o -name  "*.png"找到當前目錄下jpg和png檔案

find . -path "*wysiwyg"找出當前目錄下路徑中包含的wysiwyg的檔案路徑

find .! -name  "*.png"找出當前目錄下不是以png結尾的檔案

根據檔案型別查詢

通過 -type 進行檔案型別的過濾

f 普通檔案

l 符號連線

d目錄c字元裝置

b塊裝置

s套接字

p fifo

根據檔案大小

通過-size來過渡檔案尺寸,支援的檔案大小單元如下:

b---塊(512位元組)

c---位元組

w--字

k---千位元組

m---兆位元組

g---吉位元組

根據訪問修改時間

支援下面的時間型別

訪問時間(-atime/天,-amin/分鐘),使用者最近一次訪問時間

修改時間(-mtime/天,-mmin/分鐘)檔案最後一次修改時間

根據許可權

通過 -perm來實現。舉例找出當前許可權為777的檔案

find .-type f -perm 777

根據檔案擁有者

find .-type f -user root 找出檔案擁有者為roto的檔案

找到檔案後執行命令

通過-ok和-exec來實現。區別在於,-ok在執行命令前會進行二次確認,-exec不會

eg:刪除當前目錄下所有的js檔案,用-ok效果如下,刪除前有二次確認

find  .-type f -name "**.js" -ok rm {}\;

找出空檔案

find .-empty

批量刪除檔案

find ... -exec rn {};

find ...| xargs rm -rf

兩者都可以把find命令查詢到的結果刪除

其區別簡單的說是前者把find命令發現的結果一次性傳給exec選項,這樣當檔案太多時就可能出現引數太多的錯誤,相比較而言,後者就可以避免這個錯誤,因為xargs命令會分批次的處理結果。

shell 程式設計學習之find命令總結

find命令總結 常用選項 name 查詢 etc目錄下以conf結尾的檔案 find etc name conf iname 查詢當前目錄下檔名為aa的檔案,不區分大小寫 find iname aa user 查詢檔案屬主為hdfs的所有檔案 find user hdfs group 查詢檔案屬組...

shell命令 find查詢命令

一般用法 find 目錄 引數 按要求列出指定目錄及其子目錄下的所有檔案和目錄,指定目錄要在引數之前限定查詢檔案型別 find type d 只列出目錄 find type f 只列出檔案限定查詢目錄的深度,僅查詢當前目錄而不查詢子目錄深度用1 find maxdepth 1 只查詢當前目錄 fin...

shell指令碼 find命令

find命令用於查詢,功能很強大,格式如下 find pathname options print exec ok pathname find命令所查詢的目錄路徑。例如用.來表示當前目錄,用 來表示系統根目錄。print find命令將匹配的檔案輸出到標準輸出。exec find命令對匹配的檔案執行...