Chinaunix

标题: 关于find [打印本页]

作者: 最爱在深秋    时间: 2011-11-12 18:19
标题: 关于find
现有一个目录例如/home/myname,这个目录下有不确定的多个目录,多个目录下也有不确定的多个目录。
我想在这些目录中找.kag文件结尾的文件,如果.kag文件存在并为空则把.kag路径输出到一个文件中,如果.kag文件存在并不为空则把.kag的路径输出到另一个文件中。
我想到了用find命令,但是写不出来,只是找到了.kag文件,怎么样判断是否为空还不晓得怎样做。
是用-Z吗?
请大家指教。
最好能够写出一个比较高效的shell脚本。
作者: zooyo    时间: 2011-11-12 19:10
提示: 作者被禁止或删除 内容自动屏蔽
作者: 最爱在深秋    时间: 2011-11-12 19:39
回复 2# zooyo


    如果我把.kag的绝对路径和权限等信息也输出,怎么样写呢?
作者: zooyo    时间: 2011-11-12 19:40
提示: 作者被禁止或删除 内容自动屏蔽
作者: 最爱在深秋    时间: 2011-11-12 20:17
回复 4# zooyo


    #!/bin/bash

for i in $(find /home/myname -name "*.kag" 2>/dev/null);do
   [ -s "$i" ] &&  echo `ls -l  $i` >> file1 || echo `ls -l  $i` >> file2
done


是这样吗?


这里的2>/dev/null看得不是很懂。-s是判断文件或者目录存在而且有内容。
作者: zooyo    时间: 2011-11-12 20:23
提示: 作者被禁止或删除 内容自动屏蔽
作者: yuloveban    时间: 2011-11-12 21:05
回复 2# zooyo


      顶一个!
作者: blackold    时间: 2011-11-12 21:41
本帖最后由 blackold 于 2011-11-12 21:45 编辑

-empty

or

-size




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2