????:快速搜索:locate此命令需要預先建立數據庫,數據庫默認每天更新一次,可用updatedb命令更新數據庫。如果沒有安裝locate用yum install –y mlocate安裝,安裝完后使用updatedb命令更新數據庫(該命令搜出來的結果非常不精準,我們在實際使用中都是用find命令)[root@root ~]# touch 123.txt &nbs
快速搜索:locate
此命令需要預先建立數據庫,數據庫默認每天更新一次,可用updatedb命令更新數據庫。如果沒有安裝locate用yum install –y mlocate安裝,安裝完后使用updatedb命令更新數據庫(該命令搜出來的結果非常不精準,我們在實際使用中都是用find命令)
[root@root ~]# touch 123.txt //比如我們創(chuàng)建一個文件 [root@root ~]# locate 123.txt //然后搜索這個文件是搜索不到的 [root@root ~]# [root@root ~]# updatedb //更新數據庫后才能找得到 [root@root ~]# locate 123.txt /root/123.txt
高級搜索:find
用法:find + 文件路徑 + 查找參數
1. 基于名字的搜索
[root@root ~]# find / -name passwd //在根目錄下搜索passwd文件 /usr/bin/passwd /selinux/class/passwd /selinux/class/passwd/perms/passwd /etc/passwd /etc/pam.d/passwd
2. 基于類型的搜索
[root@root home]# find ./ -type d //搜索當前目錄下的目錄 ./ //d表示基于目錄類型的搜索 ./a
[root@root home]# find ./ -type f //搜索當前目錄下的文件 ./1.py //f表示基于文件類型的搜索 ./2.py
3. 基于更改時間的搜索
-atime 最近一次訪問時間(單位為天)
-mtime 最近一次內容修改時間(單位為天)
-ctime 最近一次屬性修改時間(單位為天)
-amin 最近一次訪問時間(單位為分鐘)
-mmin 最近一次內容修改時間(單位為分鐘)
-cmin 最近一次屬性修改時間(單位為分鐘)
[root@root home]# find ./ -mtime -5 //-5表示5天內更改過的文件 ./ //如果是+5則表示修改時間超過5天的文件 ./1.py ./a
[root@root home]# find ./ -mmin +5 //+5表示修改時間超過5分鐘的文件 ./ ./1.py ./a
注意:當我們更改文件內容時,ctime也會隨著更改,因為文件的內容更改了,也就意味著文件大小也被更改了,那么就意味著屬性被修改,因此ctime會更改
[root@root home]# stat 1.py //stat命令可以查看文件的atime、mtime、ctime File: "1.py" Size: 114 Blocks: 8 IO Block: 4096 普通文件 Device: fd00h/64768d Inode: 781923 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2016-08-07 11:46:00.355757826 +0800 //atime信息 Modify: 2016-08-07 11:45:58.826754450 +0800 //mtime信息 Change: 2016-08-07 11:45:58.870752238 +0800 //ctime信息
4. 基于文件權限的搜索
//基于文件權限的搜索要加上 –perm 參數
[root@root home]# find ./ -perm 777 //搜索當前目錄下文件權限為777的文件 ./c ./b ./a [root@root home]# find ./ -perm 644 //搜索當前目錄下文件權限為644的文件 ./1.py