注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

My Unix World

不要迷恋Unix,Unix只是计算世界很小的一部分!

 
 
 

日志

 
 

find  

2011-02-01 18:00:49|  分类: view-unix |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

一直以来觉得改文件的属性chmod不够用,我希望把文件夹改成700,文件改成600,可是如果加参数-R,它会将文件和文件夹一起改掉,似乎没有更好的办法。只好借助一个小脚本,对一个文件夹下面的所有目录进行遍历,如果遍历到的是一个文件夹,则改为700,如果是文件,则改为600。

今天搜到了一个办法:http://www.lslnet.com/linux/dosc1/34/linux-258258.htm

-----------------------------------------------------------
chmod 644 -R *
chmod 755 `find -type d`
或者
find /path -type f -exec chmod 644 {} \;
find /path -type d -exec chmod 755 {} \;

-----------------------------------------------------------

太TMD帅了!我的蹩脚的脚本在find面前,简直是狗屎。但思路是异曲同工的,基本的原理就是对所有目录进行遍历,但find的通用性更强大。一方面,它允许设置匹配条件,不仅可以进行type匹配,文件名匹配,,,,等等等etc,,,另一方面,结合-exec,几乎可以对匹配到的文件进行任何操作!!!

一直以来就想拥有这么一个强大的遍历器,无奈自己的那点水平实现不出来,没想到,熟以为常的find,原来正是我想找的那个遍历器。。。。。

Unix,说你什么好呢?不得不暴粗口,以此表达对叹为观止的心情。有了这么一个find,在遍历方面,夫复何求!Unix哲学之:Do one thing, and do it well啊。find位于findutils,由GNU提供,这是官网看到的该感谢的家伙们:

GNU find was originally written by Eric Decker, withenhancements by David MacKenzie, Jay Plett, and Tim Wood. GNU xargs was originally written by Mike Rendell, with enhancementsby David MacKenzie. GNU locate and its associated utilitieswere originally written by James Woods, with enhancements by DavidMacKenzie. The idea for ‘find -print0’ and ‘xargs -0’ camefrom Dan Bernstein. The current maintainer of GNU findutils (and thismanual) is James Youngman. Many other people have contributed bugfixes, small improvements, and helpful suggestions. Thanks!

http://www.gnu.org/software/findutils/manual/html_mono/find.html

请原谅我的孤陋寡闻和菜鸟水平。。。。
  评论这张
 
阅读(270)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017