您的位置:首页 > 其它

find的用法基础

2016-02-01 22:15 239 查看
一、find

find path -option [-print] [-exec -ok command] {}\;

-print 将匹配到文件输出到标准输出

-exec 对匹配的文件执行shell命令,命令形式为‘command’{}\;

-ok 同exec,执行前确认

例:例:find . -name .svn | xargs rm –rf 删除以.svn命名的文件

-name 文件名

-perm 权限

-user 用户

-group 组

-atime -mtime -ctime +n/-n n天外/内访问/修改/创建过的文件

-amin –mmin –cmin +n/-n n分钟外/内访问/修改/创建过的文件

-nogroup -nouser 无有效组/用户

-newer f1 !f2 比f1新但比f2旧的文件

-type b/d/c/p/l/f 按类型,块/目录/字符设备/fifo/符号文件/普通文件

-size n[b/c/w/k/M/G] 按大小,块(512字节)/字节/字/千字节/兆/吉

-depth 先匹配所有文件,再在子目录中查找。先备份所有文件,再备份子目录文件

-fstype 查找位于某一文件系统中的文件,这些文件系统通常可在/etc/fstab中找到

-mount 在当前的文件系统中查找文件,不进入其他文件系统

-delete 删除

-cpio 复制到磁盘设备中

-prune 忽略某个目录

例子:find test -path "test/test3" -prunue -o -print

-follow 遇到符号链接文件,跟踪所指的文件

xargs和find

1.
xargs:将标准输入转换成命令行参数。
2.
$find . -type f -name "*.txt"-print0 |xargs -0 rm -f #将匹配到的文件删除,xargs -0将 \0作为输入定界符。
3.
$find . -type f -name "*.c"-print0 | xargs -0wc -l #统计所有c程序文件的行数
xargs -0/-n num

-0 是把特殊字符当一般字符

-n num 是每行输出几个

例子:find / -atime 30 –exec rm –f {} \;删除30天内没用过的文件

chown改变一个文件的属主,用ctime可以找到,用mtime便找不到.

试试看.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: