[一天幾個linux命令] find
阿新 • • 發佈:2018-11-09
find
名稱
find - 在目錄樹中搜索檔案
使用
-name 正則表示式
基於檔名搜尋(檔案前的目錄會被忽略),正則與shell的正則一樣。因為檔案前的目錄會被忽略,所以查詢的檔名中永遠不要包括’/’,因此’-name a/b’查詢不到任何東西(你可能需要使用**-path**)。
查詢當前目錄以及子目錄下以zip結尾的檔案
[[email protected] ~]$ find . -name "*.zip"
./rocketmq-all-4.2.0-bin-release.zip
查詢當前目錄以及子目錄下以sh結尾的檔案
[[email protected]
~]$ find . -name "*.sh" ./rocketmq/benchmark/producer.sh ./rocketmq/benchmark/tproducer.sh ./rocketmq/benchmark/consumer.sh ./rocketmq/benchmark/runclass.sh ./rocketmq/bin/setcache.sh ./rocketmq/bin/cachedog.sh ./rocketmq/bin/cleancache.sh ./rocketmq/bin/cleancache.v1.sh ./rocketmq/bin/play.sh ./rocketmq/bin/tools.sh ./rocketmq/bin/os.sh ./rocketmq/bin/startfsrv.sh ./rocketmq/bin/runbroker.sh ./rocketmq/bin/runserver.sh
-path 正則表示式
'/‘或’.'不會被視為萬用字元
-user 使用者名稱
搜尋屬於指定使用者的檔案(允許使用使用者ID)
查詢當前目錄及子目錄下屬性root的檔案
[[email protected] ~]$ find -user root
./.bin/nginx
./shell_test/tar/test01/etc.tar.bz2
./shell_test/ln/test01/b
-mtime 數字
以檔案更改時間查詢
在當前目錄下查詢更改時間在5天以內的檔案
[[email protected] ~]$ find ./ -mtime -5 ./ ./.config/dconf ./.config/dconf/user ./.config/nautilus ./.config/nautilus/desktop-metadata ./.lesshst
在當前目錄下查詢更改時間在3天之前的檔案
[[email protected] ~]$ find ./ -mtime +3
-type c
以檔案型別查詢
檔案的型別
b | block (buffered) special |
c | character (unbuffered) special |
d | directory |
p | named pipe (FIFO) |
f | regular file |
l | 連結檔案 |
s | socket |
D | door (Solaris) |
在當前目錄下查詢型別是連結的檔案
[[email protected] ~]$ find ./ -type l
-size n[cwbkMG]
以檔案大小查詢
b | 512b(預設) |
---|---|
c | bytes |
w | 2bytes |
k | 1024bytes |
M | 1024Kb |
G | 1024Mb |
未完待續