*
find . -size 8 -prune
寻找大小为8个块(8*512=4096 byte,目录文件的大小)的文件,且仅在当前层目录下 (-prune)
find /logs -name 'admin.log.[0-9][0-9][0-9]' -mtime +7 -exec rm {} /;
删除/logs目录中访问时间在7日以前的,含有数字后缀的admin.log.xxx文件.
find . -name "*.LOG" -mtime +5 -ok rm {} /;
在当前目录中查找所有文件名以.LOG结尾,更改时间在5日以前的文件,并删除它们( 删除前先给出提示).
find . -name "*.LOG" -mtime +5 -exec rm {} /;
在当前目录中查找所有文件名以.LOG结尾,更改时间在5日以前的文件,并删除它们( 不给出提示,直接删除).
find . -name "core" -print | xargs echo " " > /tmp/core.log
在当前目录下查找内存信息转储文件,然后把结果保存到/tmp/core.log文件中
(文件可能很多,使用 xargs 能使结果批量而不是一次输出,以避免参数长度限制或一下生成处理进程数过多)
find / -type f -print | xargs file
查找系统中的每一个普通文件,然后使用xargs命令(批量输出而不是一下全部输出)来测试它们分别属于哪类文件
寻找当前目录下所有的可执行文件:
[method 1]
[14:11:25 ~]$ more find_exe.sh
#! /bin/sh
find $1 -name "*" | xargs file | grep -i "executable" | awk -F: '{print $1}'
#find $1 -name "*" | xargs file | grep -i "executable" | cut -d":" -f1
[14:11:25 ~]$ find_exe.sh /root
[method 2]
find . -perm -001 -or -perm -010 -or -perm -100
[ 注: 可理解为 find . -perm -744 查找 比权限744更宽松的,包括755(对应位越大越有相应权限,越宽松) ]
根据时间值来查找
[11:53:43 ~]$ touch file1
[11:54:01 ~]$ touch file2
[11:54:03 ~]$ touch file3
[14:11:24 ~]$ find . -newer file1 ! -newer file3
.
./file2
./file3
[14:11:25 ~]$ find . -newer file1 -and ! -newer file3
.
./file2
./file3
[ 注: 列出一个文件精确到秒的时间值: date -r file1 ]
find . -size 8 -prune
寻找大小为8个块(8*512=4096 byte,目录文件的大小)的文件,且仅在当前层目录下 (-prune)
find /logs -name 'admin.log.[0-9][0-9][0-9]' -mtime +7 -exec rm {} /;
删除/logs目录中访问时间在7日以前的,含有数字后缀的admin.log.xxx文件.
find . -name "*.LOG" -mtime +5 -ok rm {} /;
在当前目录中查找所有文件名以.LOG结尾,更改时间在5日以前的文件,并删除它们( 删除前先给出提示).
find . -name "*.LOG" -mtime +5 -exec rm {} /;
在当前目录中查找所有文件名以.LOG结尾,更改时间在5日以前的文件,并删除它们( 不给出提示,直接删除).
find . -name "core" -print | xargs echo " " > /tmp/core.log
在当前目录下查找内存信息转储文件,然后把结果保存到/tmp/core.log文件中
(文件可能很多,使用 xargs 能使结果批量而不是一次输出,以避免参数长度限制或一下生成处理进程数过多)
find / -type f -print | xargs file
查找系统中的每一个普通文件,然后使用xargs命令(批量输出而不是一下全部输出)来测试它们分别属于哪类文件
寻找当前目录下所有的可执行文件:
[method 1]
[14:11:25 ~]$ more find_exe.sh
#! /bin/sh
find $1 -name "*" | xargs file | grep -i "executable" | awk -F: '{print $1}'
#find $1 -name "*" | xargs file | grep -i "executable" | cut -d":" -f1
[14:11:25 ~]$ find_exe.sh /root
[method 2]
find . -perm -001 -or -perm -010 -or -perm -100
[ 注: 可理解为 find . -perm -744 查找 比权限744更宽松的,包括755(对应位越大越有相应权限,越宽松) ]
根据时间值来查找
[11:53:43 ~]$ touch file1
[11:54:01 ~]$ touch file2
[11:54:03 ~]$ touch file3
[14:11:24 ~]$ find . -newer file1 ! -newer file3
.
./file2
./file3
[14:11:25 ~]$ find . -newer file1 -and ! -newer file3
.
./file2
./file3
[ 注: 列出一个文件精确到秒的时间值: date -r file1 ]