linux命令:find详解

Linux中find命令常见用法示例:

find path -option [-print] [ -exec -ok command ] {} \;

#-print 将查找到的文件输出到标准输出
#-exec    command    {} \;       -----将查到的文件执行command操作,{} 和 \;之间有空格
#-ok 和-exec相同,只不过在操作前要询用户
-name    filename               #查找名为filename的文件
-perm                         #按执行权限来查找
-user     username              #按文件属主来查找
-group groupname              #按组来查找
-mtime    -n +n                 #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-atime     -n +n                #按文件访问时间来查GIN: 0px">-perm                          #按执行权限来查找
-user     username              #按文件属主来查找
-group groupname              #按组来查找
-mtime    -n +n                 #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-atime     -n +n                #按文件访问时间来查找文件,-n指n天以内,+n指n天以前 
-ctime     -n +n                #按文件创建时间来查找文件,-n指n天以内,+n指n天以前 
-nogroup                      #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser                       #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-newer    f1 !f2                找文件,-n指n天以内,+n指n天以前 
-ctime     -n +n                #按文件创建时间来查找文件,-n指n天以内,+n指n天以前 
-nogroup                      #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser                       #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-newer    f1 !f2                #查更改时间比f1新但比f2旧的文件
-type      b/d/c/p/l/f          #查是块设备、目录、字符设备、管道、符号链接、普通文件
-size       n[c]                #查长度为n块[或n字节]的文件
-depth                        #使查找在进入子目录前先行查找完本目录
-fstype                       #查更改时间比f1新但比f2旧的文件
-mount                        #查文件时不跨越文件系统mount点
-follow                       #如果遇到符号链接文件,就跟踪链接所指的文件
-cpio                         #对匹配的文件使用cpio命令,将他们备份到磁带设备中
-prune                        #忽略某个目录

1)在/tmp中查找所有的*.h,并在这些文件中查找“SYSCALL_VECTOR",最后打印出所有包含"SYSCALL_VECTOR"的文件名
A) find    /tmp    -name    "*.h"    | xargs    -n50    grep SYSCALL_VECTOR
B) grep    SYSCALL_VECTOR    /tmp/*.h | cut     -d‘:‘    -f1| uniq > filename
C) find    /tmp    -name "*.h"    -exec grep "SYSCALL_VECTOR"    {}    \; -print

2)find / -name filename -exec rm -rf {} \;
     find / -name filename -ok rm -rf {} \;

3)比如要查找磁盘中大于3M的文件:
find . -size +3000k -exec ls -ld {} ;

4)将find出来的东西拷到另一个地方
find *.c -exec cp ‘{}‘ /tmp ‘;‘
如果有特殊文件,可以用cpio,也可以用这样的语法:
find dir -name filename -print | cpio -pdv newdir

6)查找2004-11-30 16:36:37时更改过的文件
# A=`find ./ -name "*php"` |    ls -l --full-time $A 2>/dev/null | grep "2004-11-30 16:36:37
二、linux下find命令的用法1. 基本用法:
      find / -name 文件名
     find ver1.d ver2.d -name ‘*.c‘ -print    查找ver1.d,ver2.d *.c文件并打印
     find . -type d -print 从当前目录查找,仅查找目录,找到后,打印路径名。可用于打印目录结构。
2. 无错误查找:
      find / -name access_log 2 >/dev/null
3. 按尺寸查找:
      find / -size 1500c (查找1,500字节大小的文件,c表示字节)
      find / -size +1500c (查找大于1,500字节大小的文件,+表示大于)    
      find / -size +1500c (查找小于1,500字节大小的文件,-表示小于)    
4. 按时间:
      find / -amin n 最后n分钟 
      find / -atime n 最后n天
      find / -cmin n 最后n分钟改变状态
      find / -ctime n 最后n天改变状态
5. 其它:
      find / -empty 空白文件、空白文件夹、没有子目录的文件夹
      find / -false 查找系统中总是错误的文件
      find / -fstype type 找存在于指定文件系统的文件,如type为ext2
      find / -gid n 组id为n的文件
      find / -group gname 组名为gname的文件
      find / -depth n 在某层指定目录中优先查找文件内容
      find / -maxdepth levels 在某个层次目录中按递减方式查找
6. 逻辑
      -and 条件与 -or 条件或
7. 查找字符串
      find . -name ‘*.html‘ -exec grep ‘mailto:‘{}

时间: 2024-08-28 15:01:40

linux命令:find详解的相关文章

linux命令历史详解

概念:顾名思义,我们在linux终端输过的命令,系统都会将他们加载到内存中,以便我们快速调用命令.另外,Bash拥有自动记录命令历史的功能,用户所执行的命令会在注销时自动记录到自己的家目录下的.bash_history隐藏文件中,这样方便我们了解用户的对系统的整个操作过程,查询可能出错的原因. 查看命令历史记录的方法: 可以通过直接打开文件来查看 命令 [[email protected] ~]$ cat .bash_history 2.通过键盘的上下键来上翻或下翻历史记录 3.通过histor

linux命令大全详解

#!/bin/bash if [[ "$(whoami)" != "root" ]]; then echo "Please run this script as root." >&2 exit 1 fi echo "------- system init ---------" echo "------- epel -------" cd /etc/yum.repos.d/ if [ -f Ce

linux wget 命令用法详解(附实例说明)

Linux wget是一个下载文件的工具,它用在命令行下.对于Linux用户是必不可少的工具,尤其对于网络管理员,经常要下载一些软件或从远程服务器恢复备份到本地服务器.如果我们使用虚拟主机,处理这样的事务我们只能先从远程服务器下载到我们电脑磁盘,然后再用ftp工具上传到服务器.这样既浪费时间又浪费精力,那不没办法的事.而到了Linux VPS,它则可以直接下载到服务器而不用经过上传这一步.wget工具体积小但功能完善,它支持断点下载功能,同时支持FTP和HTTP下载方式,支持代理服务器和设置起来

linux nc命令使用详解(转)

linux nc命令使用详解 功能说明:功能强大的网络工具 语 法:nc [-hlnruz][-g<网关...>][-G<指向器数目>][-i<延迟秒数>][-o<输出文件>][-p<通信端口>][-s<来源位址>][-v...][-w<超时秒数>][主机名称][通信端口...] 参 数: -g<网关> 设置路由器跃程通信网关,最丢哦可设置8个. -G<指向器数目> 设置来源路由指向器,其数值为4的

(备忘)Linux mount(挂载命令)详解

挂接命令(mount) 首先,介绍一下挂接(mount)命令的使用方法,mount命令参数非常多,这里主要讲一下今天我们要用到的. 命令格式:mount [-t vfstype] [-o options] device dir 其中: 1.-t vfstype 指定文件系统的类型,通常不必指定.mount 会自动选择正确的类型.常用类型有: 光盘或光盘镜像:iso9660 DOS fat16文件系统:msdos Windows 9x fat32文件系统:vfat Windows NT ntfs文

Linux 下的dd命令使用详解

dd if=/dev/zero of=的含义是什么?Linux 下的dd命令使用详解     一.dd命令的解释 dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换. 注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512:c=1:k=1024:w=2 参数注释: 1. if=文件名:输入文件名,缺省为标准输入.即指定源文件.< if=input file > 2. of=文件名:输出文件名,缺省为标准输出.即指定目的文件.< of=output file >

(转)linux nc命令使用详解

linux nc命令使用详解 原文:https://www.2cto.com/os/201306/220971.html 功能说明:功能强大的网络工具 语 法:nc [-hlnruz][-g<网关...>][-G<指向器数目>][-i<延迟秒数>][-o<输出文件>][-p<通信端口>][-s<来源位址>][-v...][-w<超时秒数>][主机名称][通信端口...] 参 数: -g<网关>  设置路由器跃程

Linux常用命令与详解

Linux常用命令与详解 在Linux系统中文件删除.创建.更改等操作都是通过一个个不同的命令来完成我们想要的操作,那么什么是命令呢? 凡是在字符操作界面中输入的能够完成特定操作和任务的字符串都可以称为命令.严格来说,命令通常只代表了实现某一类功能的指令或程序的名称. 下面我们就来了解Linux系统中命令的分类有哪些?命令行的组成格式有哪些?常用的命令有哪些? Linux命令的分类 内部命令 内部命令是指集成于 Shell 解释器程序内部的一些特殊指令,也称为内建指令.内部命令无须从硬盘中重新读

Linux备份数据库,mysqldump命令实例详解

mysqldump是mysql数据库中备份工具,用于将MYSQL服务器中的数据库以标准的sql语言的方式导出,并保存到文件中. 语法: mysqldump (选项) 选项: --add-drop-table :在每个创建数据表语句前添加删除数据库的语句  --add-locks:备份数据库表时锁定数据库表  --all-databases:备份mysql服务器上的所有数据库  --comments:添加注释信息  --compact:压缩模式,产生更少的输出  --complete-insert