Linux中find常见用法示例,find命令的用法

by admin on 2019年7月11日

Linux中find常见用法示例

·find  path  -option  [  -print ]  [ -exec  -ok  command ]  {} \;
find命令的参数;

一  命令解释

Linux中find常见用法示例,find命令的用法。find经典应用

·find  path  -option  [Linux中find常见用法示例,find命令的用法。  -print ]  [ -exec  -ok  command ]  {} \;

pathname:
find命令所查找的目录路线。举例用.来代表当前目录,用/来表示系统根目录。
home88一必发,-print: find命令将卓绝的文书输出到正式输出。
-exec:
find命令对佳人才子的文书进行该参数所付出的shell命令。相应命令的样式为’command’
{ } \;,注意{ }和\;之间的空格。
-ok:
和-exec的效果与利益一样,只然而以一种特别安全的方式来试行该参数所提交的shell命令,在实行每七个发令在此以前,都会付给提示,让用户来明显是否举行。

常用示例 :find   path   -option   [   -print ]   [ -exec   -ok  
command ]   {} \;

 

find命令的参数;
 
pathname:
find命令所查找的目录路线。比方用.来表示当前目录,用/来表示系统根目录。
-print: find命令将同盟的公文输出到正规输出。
-exec:
find命令对金童玉女的公文推行该参数所付出的shell命令。相应命令的格局为’command’
{ } \;,注意{ }和\;之间的空格。
-ok:
和-exec的功用一样,只不过以一种特别安全的格局来实行该参数所提交的shell命令,在执行每多少个下令此前,都会付出提示,让用户来规定是或不是实行。
 
#-print 将查找到的文书输出到标准输出
#-exec  command  {} \;      —–将查到的文书试行command操作,{} 和
\;之间有空格
#-ok 和-exec相同,只不过在操作前要询用户
 

#-print 将查找到的文件输出到正规输出
#-exec  command  {} \;      —–将查到的公文进行command操作,{} 和
\;之间有空格
#-ok 和-exec同样,只可是在操作前要询用户

  path:
find命令所查找的目录路线。举个例子用.来表示当前目录,用/来表示系统根目录。

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

例:find . -name .svn | xargs rm -rf
 

例:find . -name .svn | xargs rm -rf

-name  filename            #搜寻名叫filename的公文
-perm                        #按实施权限来搜寻
-user    username            #按文件属主来查找
-group groupname            #按组来搜索
-mtime  -n +n               
#按文件改换时间来查找文件,-n指n天之内,+n指n天此前
-atime    -n +n              #按文件访问时间来查GIN: 0px”>

-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旧的公文
-type    b/d/c/p/l/f       
#查是块设备、目录、字符设备、管道、符号链接、普通文书
-size      n[c]              #查长度为n块[或n字节]的文件
-depth                      #使查找在步向子目录前先行查找完本目录
-fstype                     
#查位于某一项目文件系统中的文件,这个文件系统类型一般可
在/etc/fstab中找到
-mount                      #查文件时不超越文件系统mount点
-follow                     
#假如越过符号链接文件,就追踪链接所指的文件
-cpio                %;     
#查位于某一品种文件系统中的文件,这一个文件系统类型一般可
在/etc/fstab中找到
-mount                      #查文件时不超越文件系统mount点
-follow                     
#倘若境遇符号链接文件,就追踪链接所指的文书
-cpio                       
#对男才女貌的公文使用cpio命令,将他们备份到磁带设备中
-prune                      #马虎有个别目录

=====================================================
$find  ~  -name  “*.txt”  -print    #在$HOME中查.txt文件并出示
$find  .    -name  “*.txt”  -print
$find  .    -name  “[A-Z]*”  -print  #查以大写字母开始的文本
$find  /etc  -name  “host*”  -print #查以host初叶的文件
$find  .  -name  “[a-z][a-z][0–9][0–9].txt”    -print 
#查以三个小写字母和八个数字初叶的txt文件
$find .  -perm  755  -print
$find  .  -perm -007  -exec ls -l {} \; 
#查全体用户都可读写推行的文本同-perm 777
$find  . -type d  -print
$find  .  !  -type  d  -print
$find  .  -type l  -print

$find  .  -size  +1000000c  -print        #查长度大于1Mb的文件
$find  .  -size  100c        -print      # 查长度为100c的文本
$find  .  -size  +10  -print             
#查长度超过期作废10块的文书(1块=512字节)

$cd /
$find  etc  home  apps    -depth  -print  | cpio  -ivcdC65536  -o 
/dev/rmt0
$find  /etc -name “passwd*”  -exec grep  “cnscn”  {}  \; 
#看是或不是留存cnscn用户
$find . -name “yao*”  | xargs file
$find  . -name “yao*”  |  xargs  echo    “” > /tmp/core.log
$find  . -name “yao*”  | xargs  chmod  o-w

home88一必发 1

  -print: find命令将卓殊的文本输出到标准输出。

-print     将查找到的文书输出到正式输出

====================================================
 
-name  filename            #检索名叫filename的公文
-perm                        #按实行权限来寻找
-user    username            #按文件属主来查找
-group groupname            #按组来寻找
-mtime  -n +n               
#按文件更动时间来查找文件,-n指n天以内,+n指n天从前
-atime    -n +n              #按文件访问时间来查GIN: 0px”>
 
-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旧的文件
-type    b/d/c/p/l/f       
#查是块设备、目录、字符设备、管道、符号链接、普通文书
-size      n[c]              #查长度为n块[或n字节]的文件
-depth                      #使查找在步入子目录前先行查找完本目录
-fstype                     
#查位于某一品种文件系统中的文件,这个文件系统类型一般可
在/etc/fstab中找到
-mount                      #查文件时不当先文件系统mount点
-follow                     
#设若蒙受符号链接文件,就追踪链接所指的文书
-cpio                %;     
#查位于某一等级次序文件系统中的文件,那么些文件系统类型一般可
在/etc/fstab中找到
-mount                      #查文件时不当先文件系统mount点
-follow                     
#万一碰着符号链接文件,就追踪链接所指的文书
-cpio                       
#对男才女貌的文件使用cpio命令,将她们备份到磁带设备中
-prune                      #不经意有个别目录

  -exec:
find命令对一双两好的文本进行该参数所提交的shell命令。相应命令的款型为’command’
{ } \;,注意{ }和\;之间的空格。

-exec  command  {} \;  将查到的文件进行command操作,{} 和 \;之间有空格

 

$find  ~  -name  “*.txt”  -print    #在$HOME中查.txt文件并展现
$find  .    -name  “*.txt”  -print
$find  .    -name  “[A-Z]*”  -print  #查以大写字母发轫的文本
$find  /etc  -name  “host*”  -print #查以host起初的文件
$find  .  -name  “[a-z][a-z][0–9][0–9].txt”    -print 
#查以三个小写字母和四个数字初步的txt文件
$find .  -perm  755  -print
$find  .  -perm -007  -exec ls -l {} \; 
#查全体用户都可读写实施的文本同-perm 777
$find  . -type d  -print
$find  .  !  -type  d  -print
$find  .  -type l  -print
 
$find  .  -size  +1000000c  -print        #查长度大于1Mb的文件
$find  .  -size  100c        -print      # 查长度为100c的文本
$find  .  -size  +10  -print             
#查长度超越期作废10块的文书(1块=512字节)
 
$cd /
$find  etc  home  apps    -depth  -print  | cpio  -ivcdC65536  -o 
/dev/rmt0
$find  /etc -name “passwd*”  -exec grep  “cnscn”  {}  \; 
#看是不是留存cnscn用户
$find . -name “yao*”  | xargs file
$find  . -name “yao*”  |  xargs  echo    “” > /tmp/core.log
$find  . -name “yao*”  | xargs  chmod  o-w

home88一必发 2

  -ok:
和-exec的机能一样,只可是以一种越发安全的形式来推行该参数所付出的shell命令,在施行每贰个发令以前,都会交到提示,让用户来规定是或不是实行。

-ok     和-exec同样,只但是在操作前要询用户

  #-print 将查找到的文件输出到正式输出

   www.2cto.com  

  #-exec   command   {} \;      —–将查到的公文试行command操作,{} 和
\;之间有空格

====================================================

  #-ok 和-exec同样,只可是在操作前要询用户

-name  filename             #寻觅名叫filename的公文

 

-perm                            #按实行权限来查找

例:find . -name .svn | xargs rm -rf

-user   username            #按文件属主来查找

二  应用示范

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

=======================================================================================

-group groupname            #按组来寻找

-name   filename              #探求名称为filename的公文

-nogroup                  
 #查无有效属组的文书,即文件的属组在/etc/groups中官样文章

-perm                            #按实施权限来查找

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

-user    username             #按文件属主来查找

-mtime  -n n               #按文件更换时间来查找文件,-n指n天以内,
n指n天从前

-group groupname            #按组来查找

-atime   -n n              #按文件访问时间来查找文件,-n指n天之内,
n指n天此前 

-mtime   -n +n                
#按文件退换时间来查找文件,-n指n天之内,+n指n天从前

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

-atime    -n +n                 #按文件访谈时间来查GIN: 0px”>

-newer  f1 !f2              #查改变时间比f1新但比f2旧的文本

-ctime    -n +n                 
#按文件创制时间来查找文件,-n指n天之内,+n指n天从前

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

-nogroup                         
#查无有效属组的公文,即文件的属组在/etc/groups中空中楼阁

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

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

-depth                      #使查找在步向子目录前先行查找完本目录

-newer   f1 !f2                   #找文件,-n指n天以内,+n指n天以前 

-fstype                    
#查位于某一品类文件系统中的文件,那几个文件系统类型一般可
在/etc/fstab中找到

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

-mount                      #查文件时不超越文件系统mount点

-nogroup                          
#查无有效属组的文件,即文件的属组在/etc/groups中空头支票

-follow                     #一经凌驾符号链接文件,就追踪链接所指的公文

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

-cpio                      
#对男才女貌的文书使用cpio命令,将她们备份到磁带设备中

-newer   f1 !f2                   #查更换时间比f1新但比f2旧的文书

-prune                      #忽略有些目录

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

 

-size      n[c]                     #查长度为n块[或n字节]的文件
-depth                       #使查找在步向子目录前先行查找完本目录

 

-fstype                             #查更换时间比f1新但比f2旧的文书

=====================================================

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

$find  ~  -name  “*.txt”  -print      #在$HOME中查.txt文件并突显

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

$find  .  -name  “[A-Z]*”  -print     #查以大写字母起首的文本

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

$find /etc -name  “host*”  -print     #查以host初阶的文书

-fstype                            
#查位于某一体系文件系统中的文件,那一个文件系统类型一般可
在/etc/fstab中找到

$find  .  -name  “[a-z][a-z][0–9][0–9]*.txt” -print
 #查以八个小写字母和四个数字初叶的txt文件

-mount                            #查文件时不超过文件系统mount点

$find  .  -perm  755  -print

-follow                            
#一经境遇符号链接文件,就追踪链接所指的文本

$find  .  -perm -007  -exec ls -l {} \;
 #查全部用户都可读写推行的文书同-perm 777

-cpio    %;               
#查位于某一档案的次序文件系统中的文件,那么些文件系统类型一般可
在/etc/fstab中找到

$find  . -type d  -print

-mount                            #查文件时不抢先文件系统mount点

$find  .  !  -type  d  -print 

-follow                            
#若是碰着符号链接文件,就追踪链接所指的文本

$find  .  -size  1000000c  -print       #查长度大于1Mb的文件

-cpio                               
#对一双两好的文本使用cpio命令,将她们备份到磁带设备中

$find  .  -size  100c        -print      #查长度为100c的文书

-prune                             #不经意有些目录

$find  .  -size  10  -print            
#查长度领早期作废10块的文书(1块=512字节)

=======================================================================================

$find  etc  home  apps   -depth  -print  | cpio  -ivcdC65536  -o
 /dev/rmt0

$find   ~   -name   “*.txt”   -print   
                    #在$HOME中查.txt文件并出示

$find  /etc -name “passwd*”  -exec grep  “cnscn”  {}  \;
 #看是否存在cnscn用户

$find   .    -name   “*.txt”   -print $find   .    -name  
“[A-Z]*”   -print     #查以大写字母开首的文件

$ find logs -type f -mtime 5 -exec  -ok  rm {} \;
 #在/logs目录中寻觅改变时间在5日以前的公文并剔除它们

$find   /etc   -name   “host*”   -print
                     #查以host起头的文本

$find *.c -exec cp ‘{}’ /tmp ‘;’  #将find出来的事物拷到另叁个地点

$find   .   -name   “[a-z][a-z][0–9][0–9].txt”    -print  
          #查以两个小写字母和八个数字起初的txt文件

$find dir -name filename -print | cpio -pdv newdir  
 #假定有极度文件,能够用cpio,也足以用如此的语法

$find .   -perm   755   -print $find   .   -perm -007   -exec ls -l {}
\;      #查全体用户都可读写施行的文书同-perm 777

$find  . -name “yao*”  | xargs file

$find   . -type d   -print $find   .   !   -type   d   -print  $find  
.   -type l   -print

$find  . -name “yao*”  | xargs  echo   “” > /tmp/core.log

$find   .   -size   +1000000c   -print       
                  #查长度大于1Mb的公文

$find  . -name “yao*”  | xargs  chmod  o-w

$find   .   -size   100c         -print      
                  # 查长度为100c的文书

  www.2cto.com  

$find   .   -size   +10   -print             
                  #查长度超越期作废10块的文件(1块=512字节)

======================================================

$cd / $find   etc   home   apps    -depth   -print   | cpio  
-ivcdC65536   -o   /dev/rmt0 $find   /etc -name “passwd*”   -exec
grep   “cnscn”   {}   \;   #看是否存在cnscn用户

find -name ap* -o -name may*   查找以ap或may发轫的文本

$find . -name “yao*”   | xargs file $find   . -name “yao*”   |  
xargs   echo    “” > /tmp/core.log $find   . -name “yao*”   |
xargs   chmod   o-w

find /mnt  -name tom.txt  -ftype vfat
 在/mnt下搜索名叫tom.txt且文件系统类型为vfat的文书

=======================================================================================

find /mnt  -name t.txt ! -ftype vfat  
在/mnt下找知名字为tom.txt且文件系统类型不为vfat的文书

find   -name april*                           
#在当前目录下搜寻以april起始的公文

find /tmp  -name wa* -type l          
在/tmp下查找名称为wa起先且项目为标志链接的公文

find   -name   april*   fprint file            
#在当前目录下搜寻以april起初的文本,并把结果输出到file中

find /home  -mtime  -2                 在/home下查近期两日内部管理体改变过的文本

find   -name ap* -o -name may*       #搜索以ap或may初步的文书

find /home   -atime -1                 查1天之内被存取过的文件

find   /mnt   -name tom.txt   -ftype vfat   
#在/mnt下寻觅名字为tom.txt且文件系统类型为vfat的公文

find /home -mmin   60                 在/home下查60分钟前更换过的公文

find   /mnt   -name t.txt ! -ftype vfat  
  #在/mnt下搜寻名字为tom.txt且文件系统类型不为vfat的文本

find /home  -amin  30                 查近些日子30分钟前被存取过的文书

find   /tmp   -name wa* -type l              
#在/tmp下查找名称叫wa开始且项目为标记链接的文书

find /home  -newer  tmp.txt          
 在/home下查更新时间比tmp.txt近的文件或目录

find   /home   -mtime   -2                   
#在/home下查前段时间二日内部管理体改变过的公文

find /home  -anewer  tmp.txt          
在/home下查存取时间比tmp.txt近的文本或目录

find /home    -atime -1                     
#查1天以内被存取过的文书

find /home  -used  -2                
 列出文件或目录被改换过未来,在2日内被存取过的文书或目录

find /home -mmin    +60                    
#在/home下查60秒钟前改造过的文件

find /home  -user cnscn              
 列出/home目录内属于用户cnscn的公文或目录

find /home   -amin   +30                    
#查这段时间30分钟前被存取过的文本

find /home  -uid  501                
列出/home目录内用户的识别码大于501的文本或目录

find /home   -newer   tmp.txt               
#在/home下查更新时间比tmp.txt近的文书或目录

find /home  -group  cnscn              列出/home内组为cnscn的文件或目录

find /home   -anewer   tmp.txt             
#在/home下查存取时间比tmp.txt近的公文或目录

find /home  -gid 501                   列出/home内组id为501的文本或目录

find   /home   -used   -2                     
#列出文件或目录被改换过之后,在2日内被存取过的文本或目录

find /home  -nouser                  
 列出/home内不属于本地用户的文书或目录

find   /home   -user cnscn                  
#列出/home目录内属于用户cnscn的文件或目录

find /home  -nogroup                  
列出/home内不属于地点组的文件或目录

find   /home   -uid   +501                      
#列出/home目录内用户的识别码大于501的公文或目录

find /home  -name tmp.txt -maxdepth 4  列出/home内的tmp.txt
查时深度最多为3层

find   /home   -group   cnscn                  
#列出/home内组为cnscn的文书或目录

find /home  -name tmp.txt -mindepth 3  从第2层开端查

find   /home   -gid 501                          
#列出/home内组id为501的文书或目录

find /home  -empty                     查找大小为0的文书或空目录

find   /home   -nouser                        
#列出/home内不属于本地用户的公文或目录

find /home  -size  512k               查大于512k的文件

find   /home   -nogroup                    
  #列出/home内不属于本地组的文本或目录

find /home  -size  -512k               查小于512k的文件

find   /home    -name tmp.txt    -maxdepth   4      
#列出/home内的tmp.txt 查时深度最多为3层

find /home  -links  2                 查硬连接数大于2的文件或目录

find   /home   -name tmp.txt   -mindepth   3     #从第2层开头查

find /home  -perm  0700                查权限为700的文书或目录

find   /home   -empty                      
  #搜索大小为0的公文或空目录

find . -type f -exec ls -l {} \;       查找全体普通文书

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

find /tmp  -name tmp.txt  -exec cat {} \;

find   /home   -size   -512k                     #查小于512k的文件

find /tmp  -name  tmp.txt  -ok  rm {} \;

find   /home   -links   +2                  
  #查硬连接数大于2的文件或目录

 

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

======================================================

find   /tmp   -name tmp.txt   -exec cat {} \;

find   /  -amin   -10         # 查找在系统中最后10分钟访谈的文本

find   /tmp   -name   tmp.txt   -ok   rm {} \;

find   /  -atime  -2          # 查找在系统中最后48钟头访谈的文书

find    /   -amin    -10             
#招来在系统中最终10分钟访问的文件

find   /  -empty              # 查找在系统中为空的公文只怕文件夹

find    /   -atime   -2                  
#搜索在系统中最终48小时访谈的公文

find   /  -group  cat         # 查找在系统中属于 groupcat的文书

find    /   -empty                     
#检索在系统中为空的文件或然文件夹

find   /  -mmin  -5           # 查找在系统中末了5分钟里修改过的公文

find    /   -group   cat               #追寻在系统中属于
groupcat的文本

find   /  -mtime  -1          #探求在系统中最终24钟头里修改过的文书

find    /   -mmin   -5                 
#搜索在系统中最后5秒钟里修改过的文件

find   /  -nouser             #搜寻在系统中属于作废用户的公文

find    /   -mtime   -1       
       #招来在系统中最后24钟头里修改过的文本

find   /  -user   fred        #找出在系统中属于FRED这些用户的文书

find    /   -nouser          
        #查究在系统中属于作废用户的公文

 

find    /   -user    fred    
        #追寻在系统中属于FRED那么些用户的文本

来安妥前持有磁盘区:

df  -k |  awk ‘{print $1}’ |  grep  -v  ‘none’ |  sed  s”/\/dev\///g”

sda2

sda1

 

找到制订的文本,并将其清空:

find ~/bin -type f  -iname SERVERLIST | xargs -i{} cp /dev/null {}

 

下边多少个指令的分化:

find bin/ -name check* -mtime 3 -exec ls {} \; 

find bin/ -name check* -mtime 3 |xargs ls 

上面多个万一在 find 未有找到对象文件的场所下,则 ls
的参数为空,则列出当前目录的所反常,假使是删除则很有高风险; 而 exec
则空中楼阁这种风险;

 

find path -option [ -print ] [
-exec -ok command ] {} \; -print 将查找到的文件输出到正规输出 -exec
command {} \; 将查到的文本施行command操作…

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图