find ÊÇ Linux ÖÐÇ¿´óµÄËÑË÷ÃüÁ²»½ö¿ÉÒÔ°´ÕÕÎļþÃûËÑË÷Îļþ£¬»¹¿ÉÒÔ°´ÕÕȨÏÞ¡¢´óС¡¢Ê±¼ä¡¢inode ºÅµÈÀ´ËÑË÷Îļþ¡£µ«ÊÇ find ÃüÁîÊÇÖ±½ÓÔÚÓ²ÅÌÖнøÐÐËÑË÷µÄ£¬Èç¹ûÖ¸¶¨µÄËÑË÷·¶Î§¹ý´ó£¬findÃüÁî¾Í»áÏûºÄ½Ï´óµÄϵͳ×ÊÔ´£¬µ¼Ö·þÎñÆ÷ѹÁ¦¹ý´ó¡£ËùÒÔ£¬ÔÚʹÓà find ÃüÁîËÑË÷ʱ£¬²»ÒªÖ¸¶¨¹ý´óµÄËÑË÷·¶Î§¡£
find ÃüÁîµÄ»ù±¾ÐÅÏ¢ÈçÏ£º
ÃüÁîÃû³Æ£ºfind¡£
Ó¢ÎÄÔÒ⣺search for files in a directory hierarchy.
ËùÔÚ·¾¶£º/bin/find¡£
Ö´ÐÐȨÏÞ£ºËùÓÐÓû§¡£
¹¦ÄÜÃèÊö£ºÔÚĿ¼ÖвéÕÒÎļþ¡£
ÃüÁî¸ñʽ
[root@localhost ~]# find ËÑË÷·¾¶ [Ñ¡Ïî] ËÑË÷ÄÚÈÝfind ÊDZȽÏÌØÊâµÄÃüÁËüÓÐÁ½¸ö²ÎÊý£º
µÚÒ»¸ö²ÎÊýÓÃÀ´Ö¸¶¨ËÑË÷·¾¶£»
µÚ¶þ¸ö²ÎÊýÓÃÀ´Ö¸¶¨ËÑË÷ÄÚÈÝ¡£
¶øÇÒfindÃüÁîµÄÑ¡Ïî±È½Ï¸´ÔÓ£¬ÎÒÃÇÒ»¸öÒ»¸ö¾ÙÀýÀ´¿´¡£
°´ÕÕÎļþÃûËÑË÷
[root@localhost ~]#find ËÑË÷·¾¶ [Ñ¡Ïî] ËÑË÷ÄÚÈÝÑ¡Ï
-name: °´ÕÕÎļþÃûËÑË÷£»
-iname: °´ÕÕÎļþÃûËÑË÷£¬²»Çø·ÖÎļþÃû´óС£»-inum: °´ÕÕ inode ºÅËÑË÷£»
ÕâÊÇ find ×î³£ÓõÄÓ÷¨£¬ÎÒÃÇÀ´ÊÔÊÔ£º
[root@localhost ~]# find /-name yum.conf
/etc/yum.conf
#ÔÚĿ¼Ï–ËÕÒÎļþÃûÊÇyum.confµÄÎļþ
µ«ÊÇ find ÃüÁîÓÐÒ»¸öÐ¡ÌØÐÔ£¬¾ÍÊÇËÑË÷µÄÎļþÃû±ØÐëºÍÄãµÄËÑË÷ÄÚÈÝÒ»Ö²ÅÄÜÕÒµ½¡£Èç¹ûÖ»°üº¬ËÑË÷ÄÚÈÝ£¬Ôò²»»áÕÒµ½¡£ÎÒÃÇ×öÒ»¸öʵÑ飺
[root@localhost ~]# touch yum.conf.bak
#ÔÚ/root/Ŀ¼Ï½¨Á¢Ò»¸öÎļþyum.conf.bak
[root@localhost ~]# find /-name yum.conf
/etc/yum.conf
#ËÑË÷Ö»ÄÜÕÒµ½yum.confÎļþ£¬¶ø²»ÄÜÕÒµ½ yum.conf.bak Îļþfind Äܹ»ÕÒµ½µÄÊÇÖ»ÓкÍËÑË÷ÄÚÈÝ yum.conf Ò»Ö嵀 /etc/yum.conf Îļþ£¬¶ø /root/yum.conf.bak ÎļþËäÈ»º¬ÓÐËÑË÷¹Ø¼ü×Ö£¬µ«ÊDz»»á±»ÕÒµ½¡£ÕâÖÖÌØÐÔÎÒÃÇ×ܽáΪ£ºfind ÃüÁîÊÇÍêȫƥÅäµÄ£¬±ØÐëºÍËÑË÷¹Ø¼ü×ÖһģһÑù²Å»áÁгö¡£
Linux ÖеÄÎļþÃûÊÇÇø·Ö´óСдµÄ£¬Ò²¾ÍÊÇ˵£¬ËÑË÷СдÎļþ£¬ÊÇÕÒ²»µ½´óдÎļþµÄ¡£Èç¹ûÏëÒª´óСͨ³Ô£¬¾ÍҪʹÓà -iname À´ËÑË÷Îļþ¡£
[root@localhost ~]# touch CANGLS
[root@localhost ~]# touch cangls
#½¨Á¢´óдºÍСдÎļþ
[root@localhost ~]#find.-iname cangls
./CANGLS
./cangls
#ʹÓÃ-iname£¬´óСдÎļþͨ³Ô
ÿ¸öÎļþ¶¼ÓÐ inode ºÅ£¬Èç¹ûÎÒÃÇÖªµÀ inode ºÅ£¬ÔòÒ²¿ÉÒÔ°´ÕÕ inode ºÅÀ´ËÑË÷Îļþ¡£
[root@localhost ~]#ls -i install.log
262147 install.log
#Èç¹ûÖªµÀÎļþÃû£¬Ôò¿ÉÒÔÓÃ"ls -i"À´–ËÕÒinodeºÅ[root@localhost ~]# find.-inum 262147
./install.log
#Èç¹ûÖªµÀinodeºÅ£¬Ôò¿ÉÒÔÓÃfindÃüÁîÀ´–ËÕÒÎļþ°´ÕÕ inode ºÅËÑË÷Îļþ£¬Ò²ÊÇÇø·ÖÓ²Á´½ÓÎļþµÄÖØÒªÊֶΣ¬ÒòΪӲÁ´½ÓÎļþµÄ inode ºÅÊÇÒ»Öµġ£
[root@localhost ~]# ln /root/install.log /tmp/#¸øinstall.logÎļþ´´½¨Ò»¸öÓ²Á´½ÓÎļþ
[root@localhost ~]#ll -i /root/install.log /tmp/install.log262147 -rw-r--r--.2 root root 24772 1 ÔÂ 14 2014/root/install.log
262147 -rw-r--r--.2 root root 24772 1 ÔÂ 14 2014/tmp/install.log
#¿ÉÒÔ¿´µ½ÕâÁ½¸öÓ²Á´½ÓÎļþµÄinodeºÅÊÇÒ»ÖµÄ[root@localhost ~]# find /-inum 262147
/root/install.log
/tmp/install.log
#Èç¹ûÓ²Á´½Ó²»ÊÇÎÒÃÇ×Ô¼º½¨Á¢µÄ£¬Ôò¿ÉÒÔͨ¹ýfindÃüÁîËÑË÷inodeºÅ£¬À´È·¶¨Ó²Á´½ÓÎļþ°´ÕÕÎļþ´óСËÑË÷
[root@localhost ~]#find ËÑË÷·¾¶ [Ñ¡Ïî] ËÑË÷ÄÚÈÝÑ¡Ï
-size[+-]´óС£º°´ÕÕÖ¸¶¨´óСËÑË÷Îļþ
ÕâÀïµÄ"+"µÄÒâ˼ÊÇËÑË÷±ÈÖ¸¶¨´óС»¹Òª´óµÄÎļþ£¬"-" µÄÒâ˼ÊÇËÑË÷±ÈÖ¸¶¨´óС»¹ÒªÐ¡µÄÎļþ¡£ÎÒÃÇÀ´ÊÔÊÔ£º
[root@localhost ~]# ll -h install.log
-rw-r--r--.1 root root 25K 1Ô 14 2014 install.log #ÔÚµ±Ç°Ä¿Â¼ÏÂÓÐÒ»¸ö´óСÊÇ25KBµÄÎļþ[root@localhost ~]#
[root@localhost ~]# find.-size 25k
./install.log
#µ±Ç°Ä¿Â¼Ï£¬–ËÕÒ´óС¸ÕºÃÊÇ25KBµÄÎļþ£¬¿ÉÒÔÕÒµ½[root@localhost ~]# find .-size -25k
.
./.bashrc
./.viminfo
./.tcshrc
./.pearrc
./anaconda-ks.cfg
./test2
./.ssh
./.bash_history
./.lesshst
./.bash_profile
./yum.conf.bak
./.bashjogout
./install.log.syslog
./.cshrc
./cangls
#ËÑË÷СÓÚ25KBµÄÎļþ£¬¿ÉÒÔÕÒµ½ºÜ¶àÎļþ
[root@localhost ~]# find.-size +25k
#¶øµ±Ç°Ä¿Â¼ÏÂûÓдóÓÚ25KBµÄÎļþ
Æäʵ find ÃüÁîµÄ -size Ñ¡ÏîÊDZÊÕ߸öÈ˾õµÃ±È½Ï¶ñÐĵÄÑ¡ÏΪʲôÕâÑù˵£¿find ÃüÁî¿ÉÒÔ°´ÕÕ KB À´ËÑË÷£¬Ó¦¸ÃÒ²¿ÉÒÔ°´ÕÕ MB À´ËÑË÷°É¡£
[root@localhost ~]# find.-size -25m
find:ÎÞЧµÄ-sizeÀàÐÍ"m"
#Ϊʲô»á±¨´íÄØ£¿ÆäʵÊÇÒòΪÈç¹û°´ÕÕMBÀ´ËÑË÷£¬Ôò±ØÐëÊÇ´óдµÄMÕâ¾ÍÊǾÀ½áµã£¬Ç§×Ö½Ú±ØÐëÊÇСдµÄ"k"£¬¶øÕ××Ö½Ú±ØÁìÊÇ´óдµÄ"M"¡£ÓÐЩÈË»á˵£º"Äã±ðÄÇôִ×Ű¡£¬Äã¾Í²»Äܲ»Ð´µ¥Î»£¬Ö±½Ó°´ÕÕ×Ö½ÚËÑË÷°¡£¿"ºÜɵ£¬ºÜÌìÕæ£¬²»Ð´µ¥Î»£¬ÄãÃǾÍÒÔΪ»á°´ÕÕ×Ö½ÚËÑË÷Âð£¿ÎÒÃÇÀ´ÊÔÊÔ£º
[root@localhost ~]# ll anaconda-ks.cfg
-rw-------.1 root root 1207 1 Ô 14 2014 anaconda-ks.cfg#anaconda-ks.cfgÎļþÓÐ1207×Ö·¼
[root@localhost ~]# find.-size 1207
#µ«ÓÃfind²éÕÒ1207£¬ÊÇʲôҲÕÒ²»µ½µÄ
Ò²¾ÍÊÇ˵£¬find ÃüÁîµÄĬÈϵ¥Î»²»ÊÇ×Ö½Ú¡£Èç¹û²»Ð´µ¥Î»£¬ÄÇô find ÃüÁîÊǰ´ÕÕ 512 Byte À´½øÐЖËÕҵġ£ ÎÒÃÇ¿´¿´ find ÃüÁîµÄ°ïÖú¡£
[root@localhost ~]# man find
-size n[cwbkMG]
File uses n units of space. The following suffixes can be used:
'b' for 512-byte blocks (this is the default if no suffix is used)#ÕâÊÇĬÈϵ¥Î»£¬Èç¹ûµ¥Î»Îªb»ò²»Ð´µ¥Î»£¬Ôò°´ÕÕ 512ByteËÑË÷'c' for bytes
#ËÑË÷µ¥Î»ÊÇc£¬°´ÕÕ×Ö½ÚËÑË÷
'w' for two-byte words
#ËÑË÷µ¥Î»ÊÇw£¬°´ÕÕË«×Ö½Ú£¨ÖÐÎÄ£©ËÑË÷
'k'for Kilobytes (units of 1024 bytes)
#°´ÕÕKBµ¥Î»ËÑË÷£¬±ØÐëÊÇСдµÄk
'M' for Megabytes (units of 1048576 bytes)#°´ÕÕMBµ¥Î»ËÑË÷£¬±ØÐëÊÇ´óдµÄM
'G' for Gigabytes (units of 1073741824 bytes)#°´ÕÕGBµ¥Î»ËÑË÷£¬±ØÐëÊÇ´óдµÄG
Ò²¾ÍÊÇ˵£¬Èç¹ûÏëÒª°´ÕÕ×Ö½ÚËÑË÷£¬ÔòÐèÒª¼ÓËÑË÷µ¥Î»"c"¡£ÎÒÃÇÀ´ÊÔÊÔ£º
[root@localhost ~]# find.-size 1207c
./anaconda-ks.cfg
#ʹÓÃËÑË÷µ¥Î»c£¬²Å»á°´ÕÕ×Ö½ÚËÑË÷
°´ÕÕÐÞ¸Äʱ¼äËÑË÷
Linux ÖеÄÎļþÓзÃÎÊʱ¼ä(atime)¡¢Êý¾ÝÐÞ¸Äʱ¼ä(mtime)¡¢×´Ì¬ÐÞ¸Äʱ¼ä(ctime)ÕâÈý¸öʱ¼ä£¬ÎÒÃÇÒ²¿ÉÒÔ°´ÕÕʱ¼äÀ´ËÑË÷Îļþ¡£
[root@localhost ~]# findËÑË÷·¾¶ [Ñ¡Ïî] ËÑË÷ÄÚÈÝÑ¡Ï
-atime [+-]ʱ¼ä: °´ÕÕÎļþ·ÃÎÊʱ¼äËÑË÷
-mtime [+-]ʱ¼ä: °´ÕÕÎĸÄʱ¼äËÑË÷
-ctime [+-]ʱ¼ä: °´ÕÕÎļþÐÞ¸Äʱ¼äËÑË÷
ÕâÈý¸öʱ¼äµÄÇø±ðÎÒÃÇÔÚ stat ÃüÁîÖÐÒѾ½âÊ͹ýÁË£¬ÕâÀïÓà mtime Êý¾ÝÐÞ¸Äʱ¼äÀ´¾ÙÀý£¬Öصã˵˵ "[+-]"ʱ¼äµÄº¬Òå¡£
-5£º´ú±í@ÄÚÐ޸ĵÄÎļþ¡£
5£º´ú±íǰ5~6ÌìÄÇÒ»ÌìÐ޸ĵÄÎļþ¡£
+5£º´ú±í6ÌìǰÐ޸ĵÄÎļþ¡£
ÎÒÃǻһ¸öʱ¼äÖᣬÀ´½âÊÍһϣº

ÿ´Î±ÊÕß½²µ½ÕâÀ"-5"´ú±í 5 ÌìÄÚÐ޸ĵÄÎļþ£¬¶ø"+5"×ÜÓÐÈË˵´ú±í 5 ÌìÐ޸ĵÄÎļþ¡£ÒªÊDZÊÕßÄÜÖªµÀ 5 ÌìϵͳÖÐÄܽ¨Á¢Ê²Ã´Îļþ£¬Ôç¾ÍÈ¥Âò²ÊƱÁË£¬ÄÇÊÇδ²·ÏÈÖª°¡£¡ËùÒÔ"-5"Ö¸µÄÊÇ 5 ÌìÄÚÐ޸ĵÄÎļþ£¬"5"Ö¸µÄÊÇǰ 5~6 ÌìÄÇÒ»ÌìÐ޸ĵÄÎļþ£¬"+5"Ö¸µÄÊÇ 6 ÌìǰÐ޸ĵÄÎļþ¡£ÎÒÃÇÀ´ÊÔÊÔ£º
[root@localhost ~]#find.-mtime -5
#²éÕÒ5ÌìÄÚÐ޸ĵÄÎļþ
´ó¼Ò¿ÉÒÔÔÚϵͳÖаѼ¸¸öÑ¡Ïî¶¼ÊÔÊÔ£¬¾Í¿ÉÒÔÃ÷°×¸÷Ñ¡ÏîÖ®¼äµÄ²î±ðÁË¡£
find ²»½ö¿ÉÒÔ°´ÕÕ atmie¡¢mtime¡¢ctime À´–ËÕÒÎļþµÄʱ¼ä£¬Ò²¿ÉÒÔ°´ÕÕ amin¡¢mmin ºÍ cmin À´–ËÕÒÎļþµÄʱ¼ä£¬Çø±ðÖ»ÊÇËùÓÐ time Ñ¡ÏîµÄĬÈϵ¥Î»ÊÇÌ죬¶ø min Ñ¡ÏîµÄĬÈϵ¥Î»ÊÇ·ÖÖÓ¡£
°´ÕÕȨÏÞËÑË÷
ÔÚ find ÖУ¬Ò²¿ÉÒÔ°´ÕÕÎļþµÄȨÏÞÀ´½øÐÐËÑË÷¡£È¨ÏÞÒ²Ö§³Ö [+/-] Ñ¡Ïî¡£ÎÒÃÇÏÈ¿´Ò»ÏÂÃüÁî¸ñʽ¡£
[root@localhost ~]# find ËÑË÷·¾¶ [Ñ¡Ïî] ËÑË÷ÄÚÈÝÑ¡Ï
-perm ȨÏÞģʽ£º–ËÕÒÎļþȨÏ޸պõÈÓÚ"ȨÏÞģʽ"µÄÎļþ-perm -ȨÏÞģʽ£º–ËÕÒÎļþȨÏÞÈ«²¿°üº¬"ȨÏÞģʽ"µÄÎļþ-perm +ȨÏÞģʽ£º–ËÕÒÎļþȨÏÞ°üº¬"ȨÏÞģʽ"µÄÈÎÒâÒ»¸öȨÏÞµÄÎļþΪÁ˱ãÓÚÀí½â£¬ÎÒÃÇÒª¾Ù¼¸¸öÀý×Ó¡£ÏȽ¨Á¢¼¸¸ö²âÊÔÎļþ¡£
[root@localhost ~]# mkdir test
[root@localhost ~]# cd test/
[root@localhost test]# touch testl
[root@localhost test]# touch test2
[root@localhost test]# touch test3
[root@localhost test]# touch test4
#½¨Á¢²âÊÔĿ¼£¬ÒÔ¼°²âÊÔÎļþ
[root@localhost test]# chmod 755 testl
[root@localhost test]# chmod 444 test2
[root@localhost test]# chmod 600 test3
[root@localhost test]# chmod 200 test4
#É趨ʵÑéȨÏÞ¡£ÒòΪÊÇʵÑéȨÏÞ£¬ËùÒÔ¿´ÆðÀ´±È½Ï±ðŤ[root@localhost test]# ll
×ÜÓÃÁ¿0
-rwxr-xr-x 1 root root 0 6Ô 17 11:05 testl -r--r--r-- 1 root root 0 6Ô 17 11:05 test2-rw------- 1 root root 0 6Ô 17 11:05 test3-w------- 1 root root 0 6Ô 17 11:05 test4#²é¿´È¨ÏÞ
¡¾Àý 1¡¿"-permȨÏÞģʽ"¡£
ÕâÖÖËÑË÷±È½Ï¼òµ¥£¬´ú±í–ËÕÒµÄȨÏÞ±ØÐëºÍÖ¸¶¨µÄȨÏÞģʽһģһÑù£¬²Å¿ÉÒÔÕÒµ½¡£
[root@localhost test]#find.-perm 444
./test2
[root@localhost test]#find.-perm 200
./test4
#°´ÕÕÖ¸¶¨È¨ÏÞËÑË÷Îļþ£¬ÎļþµÄȨÏÞ±ØÐëºÍËÑË÷Ö¸¶¨µÄȨÏÞÒ»Ö£¬²ÅÄÜÕÒµ½¡¾Àý 2¡¿"-perm-ȨÏÞģʽ"¡£
Èç¹ûʹÓÃ"-ȨÏÞģʽ"£¬ÊÇ´ú±íµÄÊÇÎļþµÄȨÏÞ±ØÐëÈ«²¿°üº¬ËÑË÷ÃüÁîÖ¸¶¨µÄȨÏÞģʽ£¬²Å¿ÉÒÔÕÒµ½¡£
[root@localhost test]#find .-perm -200
./test4 <-´ËÎļþȨÏÞΪ200
./test3 <-´ËÎļþȨÏÞΪ600
./testl <-´ËÎļþȨÏÞΪ755
#ËÑË÷ÎļþµÄȨÏÞ°üº¬200µÄÎļþ£¬²»»áÕÒµ½test2Îļþ£¬ÒòΪtest2µÄȨÏÞΪ444£¬²»°üº¬200ȨÏÞÒòΪ test4 µÄȨÏÞ 200(-w-------)¡¢test3 µÄȨÏÞ 600(-rw-------)ºÍ test1 µÄȨÏÞ 755(-rwxr-xr-x) ¶¼°üº¬ 200(--w-------) ȨÏÞ£¬ËùÒÔ¿ÉÒÔÕÒµ½£»¶ø test2 µÄȨÏÞÊÇ 444 (-r--r--r--)£¬²»°üº¬ 200 (--w-------)ȨÏÞ£¬ËùÒÔÕÒ²»µ½£¬ÔÙÊÔÊÔ£º
[root@localhost test]# find .-perm -444
.
./test2 <-´ËÎļþȨÏÞΪ444
./test1 <-´ËÎļþȨÏÞΪ755
#ËÑË÷ÎļþµÄȨÏÞ°üº¬444µÄÎļþ
ÉÏÊöËÑË÷»áÕÒµ½ test1 ºÍ test2£¬ÒòΪ test1 µÄȨÏÞ 755 (-rwxr-xr-x)ºÍ test2 µÄȨÏÞ 444 (-r--r--r--)¶¼ÍêÈ«°üº¬ 444 (-r--r--r--)ȨÏÞ£¬ËùÒÔ¿ÉÒÔÕÒµ½£»¶ø test3 µÄȨÏÞ 600 (-rw-------)ºÍ test4 µÄȨÏÞ 200 (-w-------)²»ÍêÈ«°üº¬ 444 (-r--r--r--) ȨÏÞ£¬ËùÒÔÕÒ²»µ½¡£Ò²¾ÍÊÇ˵£¬test3 ºÍ test4 ÎļþµÄËùÓÐÕßȨÏÞËäÈ»°üº¬ 4 ȨÏÞ£¬µ«ÊÇËùÊô×éȨÏÞºÍÆäËûÈËȨÏÞ¶¼ÊÇ 0£¬²»°üº¬ 4 ȨÏÞ£¬ËùÒÔÕÒ²»µ½£¬ÕâÒ²ÊÇÍêÈ«°üº¬µÄÒâÒå¡£
¡¾Àý 3¡¿"-perm+ȨÏÞģʽ"
¸Õ¸ÕµÄ"-perm-ȨÏÞģʽ"ÊDZØÐëÍêÈ«°üº¬£¬²ÅÄÜÕÒµ½£»¶ø"-perm+ȨÏÞģʽ"ÊÇÖ»Òª°üº¬ÈÎÒâÒ»¸öÖ¸¶¨È¨ÏÞ£¬¾Í¿ÉÒÔÕÒµ½¡£ÎÒÃÇÀ´ÊÔÊÔ£º
[root@localhost test]# find .-perm +444
./test4 <-´ËÎļþȨÏÞΪ200
./test3 <-´ËÎļþȨÏÞΪ600
./testl <-´ËÎļþȨÏÞΪ755
#ËÑË÷ÎļþµÄȨÏÞ°üº¬200µÄÎļþ£¬²»»áÕÒµ½test2Îļþ£¬ÒòΪtest2µÄȨÏÞΪ444£¬²»°üº¬200ȨÏÞ¡£
ÒòΪ test4 µÄȨÏÞ 200 (--w-------)¡¢test3 µÄȨÏÞ 600 (-rw-------)ºÍ test1 µÄȨÏÞ 755 (-rwxr-xr-x)¶¼°üº¬ 200(--w-------)ȨÏÞ£¬ËùÒÔ¿ÉÒÔÕÒµ½£»¶ø test2 µÄȨÏÞÊÇ 444 (-r--r--r--)£¬²»°üº¬ 200 (--w-------)ȨÏÞ£¬ËùÒÔÕÒ²»µ½¡£
°´ÕÕËùÓÐÕߺÍËùÊô×éËÑË÷
[root@localhost ~]# find ËÑË÷·¾¶ [Ñ¡Ïî] ËÑË÷ÄÚÈÝÑ¡Ï
-uid Óû§ ID:°´ÕÕÓû§ ID –ËÕÒËùÓÐÕßÊÇÖ¸¶¨ ID µÄÎļþ-gid ×é ID:°´ÕÕÓû§×é ID –ËÕÒËùÊô×éÊÇÖ¸¶¨ ID µÄÎļþ-user Óû§Ãû£º°´ÕÕÓû§Ãû–ËÕÒËùÓÐÕßÊÇÖ¸¶¨Óû§µÄÎļþ-group ×éÃû£º°´ÕÕ×éÃû–ËÕÒËùÊô×éÊÇÖ¸¶¨Óû§×éµÄÎļþ-nouser£º–ËÕÒûÓÐËùÓÐÕßµÄÎļþ
Õâ×éÑ¡Ïî±È½Ï¼òµ¥£¬¾ÍÊǰ´ÕÕÎļþµÄËùÓÐÕߺÍËùÊô×éÀ´½øÐÐÎļþµÄ–ËÕÒ¡£ÔÚ Linux ϵͳÖУ¬¾ø´ó¶àÊýÎļþ¶¼ÊÇʹÓà root Óû§Éí·Ý½¨Á¢µÄ£¬ËùÒÔÔÚĬÈÏÇé¿öÏ£¬¾ø´ó¶àÊýϵͳÎļþµÄËùÓÐÕß¶¼ÊÇ root¡£ÀýÈ磺
[root@localhost ~]#find.-user root
#ÔÚµ±Ç°Ä¿Â¼ÖЖËÕÒËùÓÐÕßÊÇ root µÄÎļþ
ÓÉÓÚµ±Ç°Ä¿Â¼ÊÇ root µÄ¼ÒĿ¼£¬ËùÓÐÎļþµÄËùÓÐÕß¶¼ÊÇ root Óû§£¬ËùÒÔÕâÌõËÑË÷ÃüÁî»áÕÒµ½µ±Ç°Ä¿Â¼ÏÂËùÓеÄÎļþ¡£
°´ÕÕËùÓÐÕߺÍËùÊô×éËÑË÷ʱ£¬"-nouser"Ñ¡Ïî±È½Ï³£Óã¬Ö÷ÒªÓÃÓÚ–ËÕÒÀ¬»øÎļþ¡£ÔÚ Linux ÖУ¬ËùÓеÄÎļþ¶¼ÓÐËùÓÐÕߣ¬Ö»ÓÐÒ»ÖÖÇé¿öÀýÍ⣬ÄǾÍÊÇÍâÀ´Îļþ¡£±ÈÈç¹âÅÌºÍ U ÅÌÖеÄÎļþÈç¹ûÊÇÓÉ Windows ¸´ÖƵģ¬ÔÚ Linux ÖЖ˿´¾ÍÊÇûÓÐËùÓÐÕßµÄÎļþ£»ÔÙ±ÈÈçÊÖ¹¤Ô´Âë°ü°²×°µÄÎļþ£¬Ò²ÓпÉÄÜûÓÐËùÓÐÕß¡£
³ýÕâÖÖÍâÀ´ÎļþÍ⣬Èç¹ûϵͳÖз¢ÏÖÁËûÓÐËùÓÐÕßµÄÎļþ£¬Ò»°ãÊÇûÓÐ×÷ÓõÄÀ¬»øÎļþ£¨±ÈÈçÓû§É¾³ýÖ®ºóÒÅÁôµÄÎļþ£©£¬ÕâʱÐèÒªÓû§ÊÖ¹¤´¦Àí¡£ËÑË÷ûÓÐËùÓÐÕßµÄÎļþ£¬¿ÉÒÔÖ´ÐÐÒÔÏÂÃüÁ
[root@localhost ~]# find/-nouser
°´ÕÕÎļþÀàÐÍËÑË÷
[root@localhost ~]# find ËÑË÷·¾¶ [Ñ¡Ïî] ËÑË÷ÄÚÈÝÑ¡Ïî:
-type d£º²éÕÒĿ¼
-type f£º²éÕÒÆÕͨÎļþ
-type l£º²éÕÒÈíÁ´½ÓÎļþ
Õâ¸öÃüÁîÒ²ºÜ¼òµ¥£¬Ö÷Òª°´ÕÕÎļþÀàÐͽøÐÐËÑË÷¡£ÔÚÒ»Ð©ÌØÊâÇé¿öÏ£¬±ÈÈçÐèÒª°ÑÆÕͨÎļþºÍĿ¼ÎļþÇø·Ö¿ª£¬±ÈÈçÐèÒª°ÑÆÕͨÎļþºÍĿ¼ÎļþÇø·Ö¿ª£¬Ê¹ÓÃÕâ¸öÑ¡Ïî¾ÍºÜ·½±ã¡£
[root@localhost ~]# find /etc -type d
#²éÕÒ/etc/Ŀ¼ÏÂÓÐÄÄЩ×ÓĿ¼
Âß¼ÔËËã·û
[root@localhost ~]#find ËÑË÷·¾¶ [Ñ¡Ïî] ËÑË÷ÄÚÈÝÑ¡Ï
-a£ºandÂß¼Óë
-o£ºorÂß¼»ò
-not£ºnotÂß¼·Ç
1) -a:andÂß¼Óë
find ÃüÁîÒ²Ö§³ÖÂß¼ÔËËã·ûÑ¡ÏÆäÖÐ -a ´ú±íÂß¼ÓëÔËË㣬Ҳ¾ÍÊÇ -a µÄÁ½¸öÌõ¼þ¶¼³ÉÁ¢£¬find ËÑË÷µÄ½á¹û²Å³ÉÁ¢¡£
¾Ù¸öÀý×Ó£º
[root@localhost ~]# find.-size +2k -a -type f#ÔÚµ±Ç°Ä¿Â¼ÏÂËÑË÷´óÓÚ2KB£¬²¢ÇÒÎļþÀàÐÍÊÇÆÕͨÎļþµÄÎļþÔÚÕâ¸öÀý×ÓÖУ¬Îļþ¼ÈÒª´óÓÚ 2KB£¬ÓÖ±ØÐëÊÇÆÕͨÎļþ£¬find ÃüÁî²Å¿ÉÒÔÕÒµ½¡£ÔپٸöÀý×Ó£º
[root@localhost ~]# find.-mtime -3 -a -perm 644#ÔÚµ±Ç°Ä¿Â¼ÏÂËÑË÷3ÌìÒÔÄÚÐ޸Ĺý£¬²¢ÇÒȨÏÞÊÇ644µÄÎļþ2) -o:orÂß¼»ò
-o Ñ¡Ïî´ú±íÂß¼»òÔËË㣬Ҳ¾ÍÊÇ -o µÄÁ½¸öÌõ¼þÖ»ÒªÆäÖÐÒ»¸ö³ÉÁ¢£¬find ÃüÁî¾Í¿ÉÒÔÕÒµ½½á¹û¡£ÀýÈ磺
[root@localhost ~]#find.-name cangls -o -name bols./cangls
./bols
#ÔÚµ±Ç°Ä¿Â¼ÏÂËÑË÷ÎļþÃûҪôÊÇcanglsµÄÎļþ£¬ÒªÃ´ÊÇbolsµÄÎļþ-o Ñ¡ÏîµÄÁ½¸öÌõ¼þÖ»Òª³ÉÁ¢Ò»¸ö£¬find ÃüÁî¾Í¿ÉÒÔÕÒµ½½á¹û£¬ËùÒÔÕâ¸öÃüÁî¼È¿ÉÒÔÕÒµ½ cangls Îļþ£¬Ò²¿ÉÒÔÕÒµ½ bols Îļþ¡£
3) -not:notÂß¼·Ç
-notÊÇÂß¼·Ç£¬Ò²¾ÍÊÇÈ¡·´µÄÒâ˼¡£¾Ù¸öÀý×Ó:
[root@localhost ~]# find.-not -name cangls#ÔÚµ±Ç°Ä¿Â¼ÏÂËÑË÷ÎļþÃû²»ÊÇcanglsµÄÎļþ
ÆäËûÑ¡Ïî
1) -execÑ¡Ïî
ÕâÀïÎÒÃÇÖ÷Òª½²½âÁ½¸öÑ¡Ïî"-exec"ºÍ"-ok"£¬ÕâÁ½¸öÑ¡ÏîµÄ»ù±¾×÷Ó÷dz£ÏàËÆ¡£ÎÒÃÇÏÈÀ´¿´¿´ "exec"Ñ¡ÏîµÄ¸ñʽ¡£
[root@localhost ~]# find ËÑË÷·¾¶ [Ñ¡Ïî] ËÑË÷ÄÚÈÝ -exec ÃüÁî2{}\;Ê×ÏÈ£¬Çë´ó¼Ò×¢ÒâÕâÀïµÄ"{}"ºÍ"\;"ÊDZê×¼¸ñʽ£¬Ö»ÒªÖ´ÐÐ"-exec"Ñ¡ÏÕâÁ½¸ö·ûºÅ±ØÐëÍêÕûÊäÈë¡£
Æä´Î£¬Õâ¸öÑ¡ÏîµÄ×÷ÓÃÆäʵÊÇ°Ñ find ÃüÁîµÄ½á¹û½»¸øÓÉ"-exec"µ÷ÓõÄÃüÁî 2 À´´¦Àí¡£"{}"¾Í´ú±í find ÃüÁîµÄ–ËÕÒ½á¹û¡£
ÎÒÃǾٸöÀý×Ó£¬¸Õ¸ÕÔÚ½²È¨ÏÞµÄʱºò£¬Ê¹ÓÃȨÏÞģʽËÑË÷Ö»ÄÜ¿´µ½ÎļþÃû£¬ÀýÈ磺
[root@localhost test]#find.-perm 444
./test2
Èç¹ûÒª¿´ÎļþµÄ¾ßÌåȨÏÞ£¬»¹ÒªÓÃ"ll"ÃüÁî–Ë¿´¡£ÓÃ"-exec"Ñ¡ÏîÔò¿ÉÒÔÒ»ÌõÃüÁî¸ã¶¨£º
[root@localhost test]# find.-perm 444 -exec ls -l {}\£»-r--r--r-- 1 root root 0 6Ô 17 11:05 ./test2#ʹÓÃ"-exec"Ñ¡Ï°ÑfindÃüÁîµÄ½á¹ûÖ±½Ó½»¸ø"ls -l"ÃüÁî´¦Àí"-exec"Ñ¡ÏîµÄ×÷ÓÃÊÇ°Ñ find ÃüÁîµÄ½á¹û·ÅÈë"{}"ÖУ¬ÔÙÓÉÃüÁî 2 Ö±½Ó´¦Àí¡£ÔÚÕâ¸öÀý×ÓÖоÍÊÇÓÃ"ls -l"ÃüÁîÖ±½Ó´¦Àí£¬»áʹ find ÃüÁî¸ü¼Ó·½±ã¡£
2) -okÑ¡Ïî
"-ok"Ñ¡ÏîºÍ"-exec"Ñ¡ÏîµÄ×÷Óûù±¾Ò»Ö£¬Çø±ðÔÚÓÚ£º"-exec"µÄÃüÁî»áÖ±½Ó´¦Àí£¬¶ø²»Ñ¯ÎÊ£»"-ok"µÄÃüÁî 2 ÔÚ´¦Àíǰ»áÏÈѯÎÊÓû§ÊÇ·ñÕâÑù´¦Àí£¬Ôڵõ½È·ÈÏÃüÁîºó£¬²Å»áÖ´ÐС£ÀýÈ磺
[root@localhost test]# find .-perm 444 -ok rm -rf{}\;<rm…./test2>?y <-ÐèÒªÓû§ÊäÈëy,²Å»áÖ´ÐÐ#ÎÒÃÇÕâ´ÎʹÓÃrmÃüÁîÀ´É¾³ýfindÕÒµ½µÄ½á¹û£¬É¾³ýµÄ¶¯×÷×îºÃÈ·ÈÏÒ»ÏÂ
¡·¡·¡·ÀÖÓã²¥¿ÍlinuxÅàѵ°à£¬´øÄã´ÓÐÂÊÖµ½´óÉñ£¬×ÉѯÓÒϽǴ°¿Ú×Éѯ¿ª°àʱ¼ä¡¶¡¶¡¶