列表:
Linux笔记——命令:Sort,uniq,join,cut,paste,split
Linux笔记——shell基础:变量&本地变量&位置变量&特定变量参数
鉴于博客,表格&排版&颜色标记等等无法显示,大家可以下载这个笔记的资源
12个文档,不需要积分,以目录+表格+颜色标记形式
下载资源地址http://download.csdn.net/detail/wklken/3815477
The end! Thx ! wklken的笔记
-----------------------------------------------开始学,记录下,方便查......><
命令:find
功能 |
查找特定字符串的文件或目录 |
格式 |
find [pathName] [options ] [tests] [actions] |
pathname:路径,当前为. 用户根目录为~ 系统根目录/ options:命令选项 见列表 test 一些针对属性的测试 actions [-print -exec -ok] -print:将匹配文件输出到标准输出 -exec command:对匹配文件执行参数所给的shell命令,这个动作必须使用\;字符对结尾 -ok command:同上,但存在询问选择 -ls:对当前文件使用ls-dils |
主要选项: | |
-name pattern | 按文件名查找,不包含路径名,提供匹配模式pattern,pattern必须总是用引号括起 |
-perm 权限数值 | 按文件权限查找 |
-user username | 按文件属主查找 find –user ken |
-nouser | 搜索不属于本机用户的文件 |
-group 组名 | 按文件所属的组查找 |
-nogroup | 搜索不属于本机组的文件 |
-type | 按文件类型查找 b块设备,p管道,d目录,l符号链接 C字符设备,f普通文件 |
--size n[c] | 查文件长度为n的文件,c表以字符计,默认以块计算 |
-depth | 查找时,首先在当前目录,之后再其子目录 |
-maxdepth N | 最多搜索N层目录 |
-prune | 使find不在当前指定的目录中查找,若使用-depth,本选项忽略 |
-atime n | 文件在n天之前被最后访问过 |
-amin -n | |
-mtime –n +n | 按文件更改时间查找 –n n天内, +n n天前 |
-mmin -n | 查找在系统中最后n分钟里修改过的文件 |
-newer file1 ! file2 | 查找更改时间比file1新比file2旧的文件 |
-mount 或 -xdev | 查找文件时不跨越文件系统,不搜索其他文件系统中的目录 |
-fstype | 查找位于某一类型文件系统中的文件,文件系统类型可在/etc/fstab中找到 |
-follow | 跟随符号链接 |
-cpio | 对匹配文件使用cpio命令备份到磁带设备文件中 |
-empty | 查找在系统中为空的文件或者文件夹 |
常用示例: |
1. 按文件名 find . –name “myfile” –print find ~ -name “[A-Z]*” –print 【使用了正则】 find . –name “*” -print 2. 按权限数值查找 find . –perm 755 -print 3. 按文件属主或属组 find . –user ken –print find . –group mygroup -print 4. 按时间范围查找 find / -mtime -5 –print 【5天内的文件,内部计算其实精确到秒,从现在往前五天】 5. 按文件类型查找 find ~ -type f –print 【普通文件】 6. 查找比某个文件新或旧的文件 技巧:可通过touch –t 05042121 locateFile 创建时间坐标文件 find . –newer file1 ! –newer file2 –print [比file1新,比file2旧] 【使用-exec执行 查看找到的文件列表详情】 find . –newer file1 ! –newer file2 –exec ls –l {} \; 【注意分号和反斜杠间无空格】 7. 根据文件大小 默认单位以block,加c表字节 find . –size +1000c –print 【大于1000字节,若改为 -300c,表小于300字节】 8. 在当前文件系统查找,不进入其他文件系统 find . –name “*.xc” –mount -print 9. 使用-exec 或 –f 来执行shell命令 find . –type f –exec ls –l {} \; find . –type f –mtime +5 –exec rm {} \; find . –type f –mtime +5 –ok rm {} \; 二者区别是exec直接执行,ok还进行询问 【注意反斜扛和大括号之间的空格】 find . –newer while2 –print find . –newer while2 –type f –print 在当前目录搜索比while2更新的,若是测试通过,使用-type f测试是否为普通文件 find . \( -name “_*” –or –newer while2 \) –type f –print find . –newer while2 –type f –exec ls –l {} \; |