find用法小結

2021-09-29 04:26:05 字數 3269 閱讀 3330

1. 通過檔案的特徵查詢:

1) 按檔名

find / -name find /usr -name find /etc -name '*srm*'

2) 按大小

find / -size 1500c # 查詢檔案大小為1,500 bytes的檔案,字元 c 表明這個要查詢的檔案的大小是以bytes為單位。

find/ -size +10000000c# "+」是表示要求系統只列出大於指定大小的檔案,"-」表示小於

find / -empty # 查詢在系統中為空的檔案或者資料夾

-size:表示檔案大小,+表示大於某個數,-表示小於某個數。c表示單位是位元組,你可以將c換成k,m,g。

3) 按時間

find / -amin -10 # 查詢在系統中最後10分鐘訪問的檔案

find / -atime -2 # 查詢在系統中最後48小時訪問的檔案

find / -mmin -5 # 查詢在系統中最後5分鐘裡修改過的檔案

find / -mtime -1 # 查詢在系統中最後24小時裡修改過的檔案

find / -cmin -5 # 查詢在系統中最後5分鐘裡被改變狀態的檔案

find / -ctime -1 # 查詢在系統中最後24小時裡被改變狀態的檔案

訪問過用amin,修改過用mmin,檔案狀態改變過用cmin

精確到分鐘的用amin,mmin,cmin,精確到天的用atime,mtime,ctime

在5分鐘之內的用-5,在5分鐘以上的用+5

4) 按使用者

find / -user fred # 查詢在系統中屬於fred這個使用者的檔案

find / -group cat # 查詢在系統中屬於 groupcat的檔案

find / -nouser # 查詢在系統中屬於作廢使用者的檔案

5) 其他

-false 查詢系統中總是錯誤的檔案

-fstype type 查詢系統中存在於指定檔案系統的檔案,例如:ext2 .

-gid n 查詢系統中檔案數字組 id 為 n的檔案

-group gname 查詢系統中檔案屬於gnam檔案組,並且指定組和id的檔案

2. 通過檔案的特徵查詢:

find命令也提供給使用者一些特有的選項來控制查詢操作。下表就是我們總結出的最基本,最常用的find命令的控制選項及其用法。

選項用途描述

-daystart . .測試系統從今天開始24小時以內的檔案,用法類似-amin

-depth 使用深度級別的查詢過程方式,在某層指定目錄中優先查詢檔案內容

-follow 遵循萬用字元鏈結方式查詢; 另外,也可忽略萬用字元鏈結方式查詢

-maxdepth levels 在某個層次的目錄中按照遞減方法查詢

-mount 不在檔案系統目錄中查詢, 用法類似 -xdev.

-noleaf 禁止在非unux檔案系統,ms-dos系統,cd-rom檔案系統中進行最優化查詢

-help 顯示命令摘要

-version 列印版本數字

使用-follow選項後,find命令則遵循萬用字元鏈結方式進行查uuuu找,除非你指定這個選項,否則一般情況下find命令將忽略萬用字元鏈結方式進行檔案查詢。

-,這樣導致查詢速度變慢,查詢花費的時間過多。例如,我們要在當前(.)目錄技巧子目錄中查詢乙個名叫fred的檔案,我們可以使用如下命令

find . -maxdepth 2 -name fred

假如這個fred檔案在./sub1/fred目錄中,那麼這個命令就會直接定位這個檔案,查詢很容易成功。假如,這個檔案在.

/sub1/sub2 /fred目錄中,那麼這個命令就無法查詢到。因為前面已經給find命令在目錄中最大的查詢目錄級別為2,只能查詢2層目錄下的檔案。這樣做的目的就是為了讓find命令更加精確的定位檔案,如果你已經知道了某個檔案大概所在的檔案目錄級數,那麼加入-maxdepth n 就很快的能在指定目錄中查詢成功。

3. 使用混合查詢方式:

find /tmp -size +10000000c -and -mtime +2 // -and

find / -user fred -or -user george // -or 在/tmp目錄中查詢屬於fred或者george這兩個使用者的檔案

find /tmp ! -user pandaor 在/tmp目錄中查詢所有不屬於panda的檔案

命令就可以解決了。很簡單。

查詢並顯示檔案的方法

查詢到某個檔案是我們的目的,我們更想知道查詢到的檔案的詳細資訊和屬性,

find / -name "" -ls

下面的**就是一些常用的查詢檔案並顯示檔案資訊的引數和使用方法

選項用途描述

-exec command; 查詢並執行命令

-fprint file 列印檔案完整檔名

-fprint0 file 列印檔案完整檔名包括空的檔案

-fprintf file format 列印檔案格式

-ok command; 給使用者命令執行操作,根據使用者的y 確認輸入執行

-printf format 列印檔案格式

-ls 列印同種檔案格式的檔案.

2. 普通使用者無錯誤查詢:

find / -name access_log 2>/dev/null

說明:當普通使用者使用"find」命令來查詢某些沒有相應許可權檔案目錄時(linux系統中系統管理員root可以把某些檔案目錄設定成禁止訪問模式)

,往往會出現"permissiondenied."(禁止訪問)字樣。 2>/dev/null就是表明系統將把錯誤資訊輸送到stderrstream 2中.

-exec command;

刪除乙個目錄中的全部檔案

cd 「目的目錄」

find . -name * -exec rm -f {} \;

-exec 引數後面跟的是 command命令,注意如下幾點:

1) command命令的終止,使用 ';' (分號)來判定,在後面必須有乙個 ';'

出於不明原因, ';'需要用'\'來轉義,所以命令整體形式為: -exec rm -f {} \;

2) '{}',使用{}來表示檔名,也就是find前面處理過程中過濾出來的檔案,用於command命令進行處理

1.查詢所有保護字串「hello」的檔案

find / -exec grep "hello" {} \;

2.刪除所有臨時檔案

find / -name "*.tmp" -exec rm -f {} \;

Oraclespool用法小結

1.對於spool資料的sql,最好要自己定義格式,以方便程式直接匯入,sql語句如 select taskindex monindex tasktype to number to char sysdate,yyyymmdd from ssrv send s task 2.spool常用的設定 se...

c const用法小結

1.const常量,如const int max 100 優點 const常量有資料型別,而巨集常量沒有資料型別。編譯器可以對前者進行型別安全檢查,而對後者只進行字元替換,沒有型別安全檢查,並且在字元替換時可能產生意料不到的錯誤。2.const 修飾類的資料成員。const資料成員只在某個物件生存期...

Const用法小結

常量,如const int max 100 優點 const常量有資料型別,而巨集常量沒有資料型別。編譯器可以對前者進行型別安全檢查,而對後者只進行字元替換,沒有型別安全檢查,並且在字元替換時可能會產生意料不到的錯誤 邊際效應 修飾類的資料成員。如 class a const資料成員只在某個物件生存...