Linux/Unix Shell的find用法笔记

2014-11-24 08:10:15 · 作者: · 浏览: 2

Linux/Unix Shell的find用法笔记


参数解释:


find用来查询某个目录下的文件几种常用的参数如下


-path 后面跟着要查询的路径


-prune 表示不再指定目录下查询,如果同时使用-depth,那么-prune命令将会被忽略


-name 要查询的文件名,可以使用正则表达式来查询


-mtime 查询近n天更改过的文件+表示大于n,-n表示n天以内


-另外还有-atime和-ctime用法类似


-newer file1 ! -newer file2 表示查询比file1新,比file2旧的文件


-exec 表示对查询出来的文件进行某些命令操作,如 -exec ls -l {} \;


-type 要查询的文件类型


! -type d 表示除了类型为目录的


-size 指定大小的文件+10c或-10c:大于10个字节的,或者小于10个字节的


演示:


[oracle@localhost testDir]$ cat find.out
prune:
./folder
-name:
./blank_file
./find.sh
./shelltest.sh
./folder
./folder/file1
./test1.log
./test1.sh
./test2.sh
./main.sh
./find.out
-mtime: +3
./find.sh
./shelltest.sh
./folder
./folder/file1
./test1.sh
./test2.sh
./main.sh
-mtime: -3
.
./blank_file
./test1.log
./find.out
find newer then 1 and older then 2 files:
-rwxr-xr-x 1 oracle oinstall 100 Nov 10 23:08 ./test2.sh
-rwxr-xr-x 1 oracle oinstall 26 Nov 10 22:30 ./main.sh
-type:
.
./folder
except type:
./blank_file
./find.sh
./shelltest.sh
./folder/file1
./test1.log
./test1.sh
./test2.sh
./main.sh
./find.out
-size +10c :
.
./blank_file
./find.sh
./shelltest.sh
./folder
./test1.log
./test1.sh
./test2.sh
./main.sh
./find.out
-size -10c :
./folder/file1