您没有来错地!为了更好的发展,黑基网已于9月19日正式更名为【安基网】,域名更换为www.safebase.cn,请卸载旧的APP并安装新的APP,给您带来不便,敬请理解!谢谢

黑基Web安全攻防班
安基网 首页 IT技术 网络管理 查看内容

Shell下的find命令

2011-6-16 10:43| 投稿: Linux

摘要:   find  -perm 775 按文件权限查找。  -exec find命令对匹配的文件执行该参数所给出的s h e l l命令。相应命令的形式为' c o m m -  and' {} \;,注...
  find  -perm 775 按文件权限查找。  -exec find命令对匹配的文件执行该参数所给出的s h e l l命令。相应命令的形式为' c o m m -  and' {} \;,注意{ }和\;之间的空格。  -bash-3.2$ find . -name registry.xml -exec file {} \;  ./registry.xml: XML 1.0 document text  -ok 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的s h e l l命令,  在执行每一个命令之前,都会给出提示,让用户来确定是否执行。  < file … ./registry.xml > ? yes  -bash-3.2$ mkdir -p test/test1/test2  -bash-3.2$ cd test  -bash-3.2$ touch lo test1/lo test1/test2/lo  -bash-3.2$ find . -path "./test1/test2" -prune -o -name "lo" -print  ./lo  ./test1/lo  -path "/usr/sam" -prune -o -print 是 -path "/usr/sam" -a -prune -o -print 的简写表达式按顺序求值,  -a 和 -o 都是短路求值,与 shell 的 && 和 || 类似如果 -path "/usr/sam" 为真,则求值 -prune , -prune 返回真,  与逻辑表达式为真;否则不求值 -prune,与逻辑表达式为假。如果 -path "/usr/sam" -a -prune 为假,则求值 -print ,  -print返回真,或逻辑表达式为真;否则不求值 -print,或逻辑表达式为真。  if -path "/usr/sam" then  -prune  else  -print  #find /usr/sam \(-path /usr/sam/dir1 -o -path /usr/sam/file1 \) -prune -o -name "temp" -print  -user-group  ctime含inode信息修改的时间。  mtime只指文件内容建立或修改的时间  atime  用touch可以写出你想要的任何时间的文件,然后用-newer ,! -newer选项即可成功  touch -afile#modify atime to now  -mfile#modify mtime to now  -r refFile#modify time to same of refFile  -t Time  [[CC]YY]MMDDhhmm[.SS]  希望在系统根目录下查找更改时间在5日以内的文件,可以用:  $ find / -mtime -5 -print  为了在/ v a r / a d m目录下查找更改时间在3日以前的文件,可以用:  $ find /var/adm -mtime +3 -print  -newer file1 ! -newer file2  比file1新但是比file2旧的文件  -size +100000c 大于100000字节的文件  为了在当前目录下查找长度超过1 0块的文件(一块等于5 1 2字节),可以用:  $ find . -size +10 -print  为了在/logs目录中查找更改时间在5日以前的文件并删除它们,可以用:  $ find logs -type f -mtime +5 -exec rm {} \;  使用mount选项  在当前的文件系统中查找文件(不跨越其他文件系统),可以使用f i n d命令的m o u n t选项。  在下面的例子中,我们从当前目录开始查找位于本文件系统中文件名以X C结尾的文件:  $ find . -name "*.XC" -mount -print  -nouser 、nogroup 查找无有效属主的文件,即该文件的属主在/ e t c / p a s s w d中不存在。  /etc/fstab本系统中有关文件系统的信息  -cpio 对匹配的文件使用c p i o命令,将这些文件备份到磁带设备中。  -follow 如果find命令遇到符号链接文件,就跟踪至链接所指向的文件。  -depth 广度优先  设置suid位$ find . -type f -perm 4755 -print  为了查找系统中所有文件长度为0的普通文件,并列出它们的完整路径,可以用:  $ find / -type f -size 0 -exec ls -l {} \;  为了查找/var/logs目录中更改时间在7日以前的普通文件,并删除它们,可以用:  $ find /var/logs -type f -mtime +7 -exec rm {} \;  为了查找系统中所有属于a u d i t组的文件,可以用:  $find /-name -group audit -print  我们的一个审计系统每天创建一个审计日志文件。日志文件名的最后含有数字,这样我  们一眼就可以看出哪个文件是最新的,哪个是最旧的。A d m i n . l o g 文件编上了序号:  admin.log . 0 0 1、a d m i n . l o g . 0 0 2等等。下面的f i n d命令将删除/ l o g s目录中访问时间在7日以前、  含有数字后缀的a d m i n . l o g文件。该命令只检查三位数字,所以相应日志文件的后缀不要超过  999。  $find /logs -name 'admin.log[0-9][0-9][0-9]' -atime +7 -exec rm {} \;  为了查找当前文件系统中的所有目录并排序,可以用:  $find . -type d -print -local -mount |sort  为了查找系统中所有的rmt磁带设备,可以用:  $find /dev/rmt -print

小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册黑基账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!



免责声明:本文由投稿者转载自互联网,版权归原作者所有,文中所述不代表本站观点,若有侵权或转载等不当之处请联系我们处理,让我们一起为维护良好的互联网秩序而努力!联系方式见网站首页右下角。


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

最新

返回顶部