歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> Linux中find命令用法

Linux中find命令用法

日期:2017/3/3 12:34:22   编辑:Linux技術

Linux下的find命令,顧名思義,它是在目錄結構中搜索文件,並執行指定的操作。Linux下find命令提供了相當多的命令參數,也就是以何種條件進行查找。

命令格式:find [路徑] [命令參數] [表達式]

默認路徑是當前路徑,默認表達式是 -print; -print:將查找到的文件輸出到標准輸出;

例如:在終端執行命令 find 或者 find. 或者find. -print 這三個命令得到的結果是一樣的 ,都是將當前目錄的所有文件輸出到終端

-exec command {} \;

# 將查到的文件結果執行command操作

-ok和-exec用法相同, 不同之處在於-ok在操作前會詢問用戶

find命令的參數:

1、 -name filename

#查找名為filename的文件

2、 -perm

#按執行權限查找

例如查看執行權限為744的文件,使用-exec ls -l 操作,可以看到返回文件的實際權限

3、-user username

#按文件屬主查找

-nouser

#查找無有效屬主的文件

4、 -group groupname

#按屬組查找,即查找屬於groupname這個組的文件

-nogroup

#查找無有效屬組的文

5、-newer f1

#查找更改時間比f1新的文件

6、-type b/d/c/p/l/f

#查找是塊設備、目錄、字符設備、管道、符號鏈接、普通文件

例如在當前目錄的子目錄levelDB中查找目錄文件(可用於打印目錄結構)

7、-size n[c]

#查找長度為n塊或者n字節的文件

例如查找大小為10k的文件

按時間戳查找

8、–ctime -n +n

#按文件更改時間來查找文件,-n指n天以內,+n指n天以前

查找8天內更改的文件

10、-atime -n +n

#按文件訪問時間來查找文件,-n指n天以內,+n指n天以前

-amin n

#最近n分鐘訪問的文件

例如查看最近5分鐘訪問過的文件

11、-mtime -n +n

#按文件最後修改時間(指的是文件內容修改的時間)來查找文件,-n指n天以內,+n指n天以前需要注意的是:

文件的 create time,即ctime 是在寫入文件、更改所有者、權限或鏈接設置時隨inode 的內容更改而更改的。

因此,更改文件的內容即會更改 mtime 和 ctime,但是文件的 ctime 可能會在 mtime 未發生任何變化時更改 – 在權限更改,但是文件內容沒有變化的情況下。

用ls 命令查看文件的 atime、ctime 和 mtime。

ls -lc filename 列出文件的 ctime

ls -lu filename 列出文件的 atime

ls -l filename 列出文件的 mtime

Copyright © Linux教程網 All Rights Reserved