shell命令之find

在导出库给其他同学使用的时候,有时候需要导出特定目录下所有特定文件。在OSX中可以很方便用shell脚本实现这样的功能。接下来介绍一下OSX中的find命令,该命令具有强大的魔力,可以让你收到事半功倍的效果。

-print find命令将匹配的文件输出到标准输出。

-exec find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } ;,注意{ }和\;之间的空格。

-ok 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

-name filename 查找名为filename的文件

-type b/d/c/p/l/f 查是块设备、目录、字符设备、管道、符号链接、普通文件

-perm 按执行权限来查找

-user username 按文件属主来查找

-group groupname 按组来查找

-mtime -n +n 按文件更改时间来查找文件,-n指n天以内,+n指n天以前

-atime -n +n 按文件访问时间来查找文件

-ctime -n +n 按文件创建时间来查找文件,-n指n天以内,+n指n天以前

-nogroup 查无有效属组的文件,即文件的属组在/etc/groups中不存在

-nouser 查无有效属主的文件,即文件的属主在/etc/passwd中不存

-ctime -n +n 按文件创建时间来查找文件,-n指n天以内,+n指n天以前

-nogroup 查无有效属组的文件,即文件的属组在/etc/groups中不存在

-nouser 查无有效属主的文件,即文件的属主在/etc/passwd中不存

-size 查长度为n块[或n字节]的文件

-depth 使查找在进入子目录前先行查找完本目录

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

-prune 忽略某个目录

find * -print #递归查找并文件输出

find . -type f -exec ls -l {} ; #查找当前目录的所有文件并列出来

find . -size +512k #查大于512k的文件

find / -perm 0700 #查权限为700的文件或目录

find /tmp -name "*.h" -exec rm -rf {} ; #查找tmp目录下查找所有.h文件并删除

find . -type d -exec mkdir -p {} ../AppProject/Classes/{} ; #在Classes目录创建和当前目录相同的目录结构

find . -name "*.cpp" -exec cp -fp {} ../AppProject/Classes/{} ; #查找当前目录下所有.cpp文件并拷贝到Classes目录下

find . -type d -exec mkdir -p {} "${ROOT}"/AppProject/include/{} ; #在AppProject生成当前目录下的所有目录结构

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 14,316评论 2 33
  • 在linux下面工作,有些命令能够大大提高效率。本文就向大家介绍find、grep命令,他哥俩可以算是必会的lin...
    拿破轮胎阅读 4,569评论 0 4
  • 才热了一阵,还没热透心,暴风、狂阴、乱下雨降温,长江流域就是这样,有时让人分不清是春转夏还是秋转冬。即便春分后长日...
    园艺小绿阅读 3,968评论 0 1
  • 一个人吃饭、旅行、到处走走停停 一个人看书、写信、自己对话谈心 带着孤独,穿过整个城市的每个夜晚 望着茫茫都市的万...
    HRyan阅读 3,101评论 0 0
  • 一场成功的演讲要有好的开头来吸引观众,拿住听众的心,时不时的来一个笑话,如果总是长篇大论听众可能会走时,再有结尾的...
    Ding欣欣阅读 1,355评论 0 0

友情链接更多精彩内容