一凌彬、whereis 命令
whereis 是搜索系統(tǒng)命令的命令(像繞口令一樣)变屁,也就是說(shuō)议惰,whereis 命令不能搜索普通文件,而只能搜索系統(tǒng)命令腹泌。whereis 命令的基本信息如下嘶卧。
命令名稱(chēng):whereis。
英文原意:locate the binary, source, and manual page files for a command凉袱。
所在路徑:/usr/bin/whereis.
執(zhí)行權(quán)限:所有用戶(hù)芥吟。
功能描述:査找二進(jìn)制命令、源文件和幫助文檔的命令专甩。
命令格式
看英文原意钟鸵,就能發(fā)現(xiàn) whereis 命令不僅可以搜索二進(jìn)制命令,還可以找到命令的幫助文檔的位置涤躲。
[root@localhost ~]# whereis [選項(xiàng)] 命令
選項(xiàng):
-b: 只査找二制命令棺耍;
-m: 只查找?guī)椭臋n;
常見(jiàn)用法
whereis 命令的使用比較簡(jiǎn)單种樱,我們來(lái)試試蒙袍,例如:
[root@localhost ~]# whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz /usr/share/ man/man1p/ls.1p.gz
#既可以看到二進(jìn)制命令的位置,也可以看到幫助文檔的位置
但是嫩挤,如果使用 whereis 命令査看普通文件害幅,則無(wú)法査找到。例如:
[root@localhost ~]# touch cangls
[root@localhost ~]# whereis cangls
cangls:
#無(wú)法査找到普通文件的信息
如果需要査找普通文件的內(nèi)容俐镐,則需要使用 find 命令矫限,我們稍后會(huì)詳細(xì)講解 find 命令。
再看一下 whereis 命令的選項(xiàng)佩抹。如果我們只想査看二進(jìn)制命令的位置叼风,則可以使用"-b"選項(xiàng);而如果我們只想査看幫助文檔的位置棍苹,則可以使用"-m"選項(xiàng)无宿。
[root@localhost ~]# whereis -b ls
ls: /bin/ls
#只查看二進(jìn)制命令的位置
[root@localhost ~]# whereis -m ls
ls: /usr/share/man/man1/ls.1.gz /usr/share/man/ man1p/ls.1p.gz
#只査看幫助文檔的位置
- which命令:列出命令的所在路徑
which 命令的基本信息如下。
命令名稱(chēng):which枢里。
英文原意:shows the full path of(shell)commands孽鸡。
所在路徑:/usr/bin/which。
執(zhí)行權(quán)限:所有用戶(hù)栏豺。
功能描述:列出命令的所在路徑彬碱。
which 命令非常簡(jiǎn)單,可用選項(xiàng)也不多奥洼,我們直接舉個(gè)例子:
[root@localhost ~]# which ls
alias ls='ls --color=auto'
/bin/ls
#which 命令可以查找到命令的別名和命令所在位置
#alias 這段就是別名巷疼,別名就是小名,也就是說(shuō)灵奖,當(dāng)我們輸入 ls 命令時(shí)嚼沿,實(shí)際上執(zhí)行的是 ls--color=auto
- find命令:在目錄中查找文件
find 命令的基本信息如下:
- 命令名稱(chēng):find估盘。
- 英文原意:search for files in a directory hierarchy.
- 所在路徑:/bin/find。
- 執(zhí)行權(quán)限:所有用戶(hù)骡尽。
- 功能描述:在目錄中查找文件遣妥。
命令格式
[root@localhost ~]# find 搜索路徑 [選項(xiàng)] 搜索內(nèi)容
find 是比較特殊的命令,它有兩個(gè)參數(shù):
- 第一個(gè)參數(shù)用來(lái)指定搜索路徑攀细;
- 第二個(gè)參數(shù)用來(lái)指定搜索內(nèi)容箫踩。
而且find命令的選項(xiàng)比較復(fù)雜,我們一個(gè)一個(gè)舉例來(lái)看辨图。
按照文件名搜索
[root@localhost ~]#find 搜索路徑 [選項(xiàng)] 搜索內(nèi)容
選項(xiàng):
- -name: 按照文件名搜索班套;
- -iname: 按照文件名搜索,不區(qū)分文件名大泄屎印吱韭;
- -inum: 按照 inode 號(hào)搜索;
這是 find 最常用的用法鱼的,我們來(lái)試試:
[root@localhost ~]# find /-name yum.conf
/etc/yum.conf
#在目錄下査找文件名是yum.conf的文件
但是 find 命令有一個(gè)小特性理盆,就是搜索的文件名必須和你的搜索內(nèi)容一致才能找到。如果只包含搜索內(nèi)容凑阶,則不會(huì)找到猿规。我們做一個(gè)實(shí)驗(yàn):
[root@localhost ~]# touch yum.conf.bak
#在/root/目錄下建立一個(gè)文件yum.conf.bak
[root@localhost ~]# find /-name yum.conf
/etc/yum.conf
#搜索只能找到y(tǒng)um.conf文件,而不能找到 yum.conf.bak 文件
find 能夠找到的是只有和搜索內(nèi)容 yum.conf 一致的 /etc/yum.conf 文件宙橱,而 /root/yum.conf.bak 文件雖然含有搜索關(guān)鍵字姨俩,但是不會(huì)被找到。這種特性我們總結(jié)為:find 命令是完全匹配的师郑,必須和搜索關(guān)鍵字一模一樣才會(huì)列出环葵。
Linux 中的文件名是區(qū)分大小寫(xiě)的,也就是說(shuō)宝冕,搜索小寫(xiě)文件张遭,是找不到大寫(xiě)文件的。如果想要大小通吃地梨,就要使用 -iname 來(lái)搜索文件菊卷。
[root@localhost ~]# touch CANGLS
[root@localhost ~]# touch cangls
#建立大寫(xiě)和小寫(xiě)文件
[root@localhost ~]#find.-iname cangls
./CANGLS
./cangls
#使用-iname,大小寫(xiě)文件通吃
每個(gè)文件都有 inode 號(hào)宝剖,如果我們知道 inode 號(hào)洁闰,則也可以按照 inode 號(hào)來(lái)搜索文件。
[root@localhost ~]#ls -i install.log
262147 install.log
#如果知道文件名万细,則可以用"ls -i"來(lái)査找inode號(hào)
[root@localhost ~]# find.-inum 262147
./install.log
#如果知道inode號(hào)扑眉,則可以用find命令來(lái)査找文件
按照 inode 號(hào)搜索文件,也是區(qū)分硬鏈接文件的重要手段,因?yàn)橛叉溄游募?inode 號(hào)是一致的襟雷。
[root@localhost ~]# ln /root/install.log /tmp/
#給install.log文件創(chuàng)建一個(gè)硬鏈接文件
[root@localhost ~]#ll -i /root/install.log /tmp/install.log
262147 -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
#可以看到這兩個(gè)硬鏈接文件的inode號(hào)是一致的
[root@localhost ~]# find /-inum 262147
/root/install.log
/tmp/install.log
#如果硬鏈接不是我們自己建立的,則可以通過(guò)find命令搜索inode號(hào)仁烹,來(lái)確定硬鏈接文件
## 按照文件大小搜索
[root@localhost ~]#find 搜索路徑 [選項(xiàng)] 搜索內(nèi)容
選項(xiàng):
- -size[+-]大兴逝:按照指定大小搜索文件
這里的"+"的意思是搜索比指定大小還要大的文件,"-" 的意思是搜索比指定大小還要小的文件卓缰。我們來(lái)試試:
[root@localhost ~]# ll -h install.log
-rw-r--r--.1 root root 25K 1月 14 2014 install.log #在當(dāng)前目錄下有一個(gè)大小是25KB的文件
[root@localhost ~]#
[root@localhost ~]# find.-size 25k
./install.log
#當(dāng)前目錄下计呈,査找大小剛好是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
#而當(dāng)前目錄下沒(méi)有大于25KB的文件
其實(shí) find 命令的 -size 選項(xiàng)是筆者個(gè)人覺(jué)得比較惡心的選項(xiàng)捌显,為什么這樣說(shuō)?find 命令可以按照 KB 來(lái)搜索总寒,應(yīng)該也可以按照 MB 來(lái)搜索吧扶歪。
[root@localhost ~]# find.-size -25m
find:無(wú)效的-size類(lèi)型"m"
#為什么會(huì)報(bào)錯(cuò)呢?其實(shí)是因?yàn)槿绻凑誐B來(lái)搜索摄闸,則必須是大寫(xiě)的M
這就是糾結(jié)點(diǎn)善镰,千字節(jié)必須是小寫(xiě)的"k",而兆字節(jié)必領(lǐng)是大寫(xiě)的"M"年枕。有些人會(huì)說(shuō):"你別那么執(zhí)著啊炫欺,你就不能不寫(xiě)單位,直接按照字節(jié)搜索把帧品洛?"很傻,很天真摩桶,不寫(xiě)單位桥状,你們就以為會(huì)按照字節(jié)搜索嗎?我們來(lái)試試:
[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典格,是什么也找不到的
也就是說(shuō)岛宦,find 命令的默認(rèn)單位不是字節(jié)。如果不寫(xiě)單位耍缴,那么 find 命令是按照 512 Byte 來(lái)進(jìn)行査找的砾肺。 我們看看 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)
#這是默認(rèn)單位防嗡,如果單位為b或不寫(xiě)單位变汪,則按照 512Byte搜索
'c' for bytes
#搜索單位是c,按照字節(jié)搜索
'w' for two-byte words
#搜索單位是w蚁趁,按照雙字節(jié)(中文)搜索
'k'for Kilobytes (units of 1024 bytes)
#按照KB單位搜索裙盾,必須是小寫(xiě)的k
'M' for Megabytes (units of 1048576 bytes)
#按照MB單位搜索,必須是大寫(xiě)的M
'G' for Gigabytes (units of 1073741824 bytes)
#按照GB單位搜索,必須是大寫(xiě)的G
也就是說(shuō)番官,如果想要按照字節(jié)搜索庐完,則需要加搜索單位"c"。我們來(lái)試試:
[root@localhost ~]# find.-size 1207c
./anaconda-ks.cfg
#使用搜索單位c徘熔,才會(huì)按照字節(jié)搜索
## 按照修改時(shí)間搜索
Linux 中的文件有訪問(wèn)時(shí)間(atime)门躯、數(shù)據(jù)修改時(shí)間(mtime)、狀態(tài)修改時(shí)間(ctime)這三個(gè)時(shí)間酷师,我們也可以按照時(shí)間來(lái)搜索文件讶凉。
[root@localhost ~]# find搜索路徑 [選項(xiàng)] 搜索內(nèi)容
選項(xiàng):
- -atime [+-]時(shí)間: 按照文件訪問(wèn)時(shí)間搜索
- -mtime [+-]時(shí)間: 按照文改時(shí)間搜索
- -ctime [+-]時(shí)間: 按照文件修改時(shí)間搜索
這三個(gè)時(shí)間的區(qū)別我們?cè)?stat 命令中已經(jīng)解釋過(guò)了,這里用 mtime 數(shù)據(jù)修改時(shí)間來(lái)舉例山孔,重點(diǎn)說(shuō)說(shuō) "[+-]"時(shí)間的含義懂讯。 - -5:代表@內(nèi)修改的文件。
- 5:代表前5~6天那一天修改的文件台颠。
-
+5:代表6天前修改的文件褐望。
我們畫(huà)一個(gè)時(shí)間軸,來(lái)解釋一下:
每次筆者講到這里蓉媳,"-5"代表 5 天內(nèi)修改的文件譬挚,而"+5"總有人說(shuō)代表 5 天修改的文件。要是筆者能知道 5 天系統(tǒng)中能建立什么文件酪呻,早就去買(mǎi)彩票了减宣,那是未卜先知啊玩荠!所以"-5"指的是 5 天內(nèi)修改的文件漆腌,"5"指的是前 5~6 天那一天修改的文件,"+5"指的是 6 天前修改的文件阶冈。我們來(lái)試試:
[root@localhost ~]#find.-mtime -5
#查找5天內(nèi)修改的文件
大家可以在系統(tǒng)中把幾個(gè)選項(xiàng)都試試闷尿,就可以明白各選項(xiàng)之間的差別了。
find 不僅可以按照 atmie女坑、mtime填具、ctime 來(lái)査找文件的時(shí)間,也可以按照 amin匆骗、mmin 和 cmin 來(lái)査找文件的時(shí)間劳景,區(qū)別只是所有 time 選項(xiàng)的默認(rèn)單位是天,而 min 選項(xiàng)的默認(rèn)單位是分鐘碉就。
按照權(quán)限搜索
在 find 中盟广,也可以按照文件的權(quán)限來(lái)進(jìn)行搜索。權(quán)限也支持 [+/-] 選項(xiàng)瓮钥。我們先看一下命令格式筋量。
[root@localhost ~]# find 搜索路徑 [選項(xiàng)] 搜索內(nèi)容
選項(xiàng):
- -perm 權(quán)限模式:査找文件權(quán)限剛好等于"權(quán)限模式"的文件
- -perm -權(quán)限模式:査找文件權(quán)限全部包含"權(quán)限模式"的文件
- -perm +權(quán)限模式:査找文件權(quán)限包含"權(quán)限模式"的任意一個(gè)權(quán)限的文件
為了便于理解烹吵,我們要舉幾個(gè)例子。先建立幾個(gè)測(cè)試文件桨武。
[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
#建立測(cè)試目錄肋拔,以及測(cè)試文件
[root@localhost test]# chmod 755 testl
[root@localhost test]# chmod 444 test2
[root@localhost test]# chmod 600 test3
[root@localhost test]# chmod 200 test4
#設(shè)定實(shí)驗(yàn)權(quán)限。因?yàn)槭菍?shí)驗(yàn)權(quán)限呀酸,所以看起來(lái)比較別扭
[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
#查看權(quán)限
【例 1】"-perm權(quán)限模式"只损。
這種搜索比較簡(jiǎn)單,代表査找的權(quán)限必須和指定的權(quán)限模式一模一樣七咧,才可以找到。
[root@localhost test]#find.-perm 444
./test2
[root@localhost test]#find.-perm 200
./test4
#按照指定權(quán)限搜索文件叮叹,文件的權(quán)限必須和搜索指定的權(quán)限一致艾栋,才能找到
【例 2】"-perm-權(quán)限模式"。
如果使用"-權(quán)限模式"蛉顽,是代表的是文件的權(quán)限必須全部包含搜索命令指定的權(quán)限模式蝗砾,才可以找到。
[root@localhost test]#find .-perm -200
./test4 <-此文件權(quán)限為200
./test3 <-此文件權(quán)限為600
./testl <-此文件權(quán)限為755
#搜索文件的權(quán)限包含200的文件携冤,不會(huì)找到test2文件悼粮,因?yàn)閠est2的權(quán)限為444,不包含200權(quán)限
因?yàn)?test4 的權(quán)限 200(-w-------)曾棕、test3 的權(quán)限 600(-rw-------)和 test1 的權(quán)限 755(-rwxr-xr-x) 都包含 200(--w-------) 權(quán)限扣猫,所以可以找到;而 test2 的權(quán)限是 444 (-r--r--r--)翘地,不包含 200 (--w-------)權(quán)限申尤,所以找不到,再試試:
[root@localhost test]# find .-perm -444
.
./test2 <-此文件權(quán)限為444
./test1 <-此文件權(quán)限為755
#搜索文件的權(quán)限包含444的文件
上述搜索會(huì)找到 test1 和 test2衙耕,因?yàn)?test1 的權(quán)限 755 (-rwxr-xr-x)和 test2 的權(quán)限 444 (-r--r--r--)都完全包含 444 (-r--r--r--)權(quán)限昧穿,所以可以找到;而 test3 的權(quán)限 600 (-rw-------)和 test4 的權(quán)限 200 (-w-------)不完全包含 444 (-r--r--r--) 權(quán)限橙喘,所以找不到时鸵。也就是說(shuō),test3 和 test4 文件的所有者權(quán)限雖然包含 4 權(quán)限厅瞎,但是所屬組權(quán)限和其他人權(quán)限都是 0饰潜,不包含 4 權(quán)限,所以找不到磁奖,這也是完全包含的意義囊拜。
【例 3】"-perm+權(quán)限模式"
剛剛的"-perm-權(quán)限模式"是必須完全包含,才能找到比搭;而"-perm+權(quán)限模式"是只要包含任意一個(gè)指定權(quán)限冠跷,就可以找到南誊。我們來(lái)試試:
[root@localhost test]# find .-perm +444
./test4 <-此文件權(quán)限為200
./test3 <-此文件權(quán)限為600
./testl <-此文件權(quán)限為755
#搜索文件的權(quán)限包含200的文件,不會(huì)找到test2文件蜜托,因?yàn)閠est2的權(quán)限為444抄囚,不包含200權(quán)限。
因?yàn)?test4 的權(quán)限 200 (--w-------)橄务、test3 的權(quán)限 600 (-rw-------)和 test1 的權(quán)限 755 (-rwxr-xr-x)都包含 200(--w-------)權(quán)限幔托,所以可以找到;而 test2 的權(quán)限是 444 (-r--r--r--)蜂挪,不包含 200 (--w-------)權(quán)限重挑,所以找不到。
按照所有者和所屬組搜索
[root@localhost ~]# find 搜索路徑 [選項(xiàng)] 搜索內(nèi)容
選項(xiàng):
- -uid 用戶(hù) ID:按照用戶(hù) ID 査找所有者是指定 ID 的文件
- -gid 組 ID:按照用戶(hù)組 ID 査找所屬組是指定 ID 的文件
- -user 用戶(hù)名:按照用戶(hù)名査找所有者是指定用戶(hù)的文件
- -group 組名:按照組名査找所屬組是指定用戶(hù)組的文件
- -nouser:査找沒(méi)有所有者的文件
這組選項(xiàng)比較簡(jiǎn)單棠涮,就是按照文件的所有者和所屬組來(lái)進(jìn)行文件的査找谬哀。在 Linux 系統(tǒng)中,絕大多數(shù)文件都是使用 root 用戶(hù)身份建立的严肪,所以在默認(rèn)情況下史煎,絕大多數(shù)系統(tǒng)文件的所有者都是 root。例如:
[root@localhost ~]#find.-user root
#在當(dāng)前目錄中査找所有者是 root 的文件
由于當(dāng)前目錄是 root 的家目錄驳糯,所有文件的所有者都是 root 用戶(hù)篇梭,所以這條搜索命令會(huì)找到當(dāng)前目錄下所有的文件。
按照所有者和所屬組搜索時(shí)酝枢,"-nouser"選項(xiàng)比較常用恬偷,主要用于査找垃圾文件。在 Linux 中帘睦,所有的文件都有所有者喉磁,只有一種情況例外,那就是外來(lái)文件官脓。比如光盤(pán)和 U 盤(pán)中的文件如果是由 Windows 復(fù)制的协怒,在 Linux 中査看就是沒(méi)有所有者的文件;再比如手工源碼包安裝的文件卑笨,也有可能沒(méi)有所有者孕暇。
除這種外來(lái)文件外,如果系統(tǒng)中發(fā)現(xiàn)了沒(méi)有所有者的文件赤兴,一般是沒(méi)有作用的垃圾文件(比如用戶(hù)刪除之后遺留的文件)妖滔,這時(shí)需要用戶(hù)手工處理。搜索沒(méi)有所有者的文件桶良,可以執(zhí)行以下命令:
[root@localhost ~]# find/-nouser
## 按照文件類(lèi)型搜索
[root@localhost ~]# find 搜索路徑 [選項(xiàng)] 搜索內(nèi)容
選項(xiàng):
- -type d:查找目錄
- -type f:查找普通文件
- -type l:查找軟鏈接文件
這個(gè)命令也很簡(jiǎn)單座舍,主要按照文件類(lèi)型進(jìn)行搜索。在一些特殊情況下陨帆,比如需要把普通文件和目錄文件區(qū)分開(kāi)曲秉,比如需要把普通文件和目錄文件區(qū)分開(kāi)采蚀,使用這個(gè)選項(xiàng)就很方便。
[root@localhost ~]# find /etc -type d
#查找/etc/目錄下有哪些子目錄
## 邏輯運(yùn)算符
[root@localhost ~]#find 搜索路徑 [選項(xiàng)] 搜索內(nèi)容
選項(xiàng):
- -a:and邏輯與
- -o:or邏輯或
- -not:not邏輯非
1) -a:and邏輯與
find 命令也支持邏輯運(yùn)算符選項(xiàng)承二,其中 -a 代表邏輯與運(yùn)算榆鼠,也就是 -a 的兩個(gè)條件都成立云稚,find 搜索的結(jié)果才成立侮邀。
舉個(gè)例子:
[root@localhost ~]# find.-size +2k -a -type f
#在當(dāng)前目錄下搜索大于2KB砸西,并且文件類(lèi)型是普通文件的文件
在這個(gè)例子中骨宠,文件既要大于 2KB,又必須是普通文件牡借,find 命令才可以找到鞋仍。再舉個(gè)例子:
[root@localhost ~]# find.-mtime -3 -a -perm 644
#在當(dāng)前目錄下搜索3天以?xún)?nèi)修改過(guò)磕仅,并且權(quán)限是644的文件
2) -o:or邏輯或
-o 選項(xiàng)代表邏輯或運(yùn)算家妆,也就是 -o 的兩個(gè)條件只要其中一個(gè)成立灾螃,find 命令就可以找到結(jié)果。例如:
[root@localhost ~]#find.-name cangls -o -name bols
./cangls
./bols
#在當(dāng)前目錄下搜索文件名要么是cangls的文件揩徊,要么是bols的文件
-o 選項(xiàng)的兩個(gè)條件只要成立一個(gè),find 命令就可以找到結(jié)果嵌赠,所以這個(gè)命令既可以找到 cangls 文件塑荒,也可以找到 bols 文件。
3) -not:not邏輯非
-not是邏輯非姜挺,也就是取反的意思齿税。舉個(gè)例子:
[root@localhost ~]# find.-not -name cangls
在當(dāng)前目錄下搜索文件名不是cangls的文件
其他選項(xiàng)
- -exec選項(xiàng)
這里我們主要講解兩個(gè)選項(xiàng)"-exec"和"-ok",這兩個(gè)選項(xiàng)的基本作用非常相似炊豪。我們先來(lái)看看 "exec"選項(xiàng)的格式凌箕。
[root@localhost ~]# find 搜索路徑 [選項(xiàng)] 搜索內(nèi)容 -exec 命令2{}\;
首先,請(qǐng)大家注意這里的"{}"和";"是標(biāo)準(zhǔn)格式词渤,只要執(zhí)行"-exec"選項(xiàng)牵舱,這兩個(gè)符號(hào)必須完整輸入。
其次缺虐,這個(gè)選項(xiàng)的作用其實(shí)是把 find 命令的結(jié)果交給由"-exec"調(diào)用的命令 2 來(lái)處理芜壁。"{}"就代表 find 命令的査找結(jié)果。
我們舉個(gè)例子高氮,剛剛在講權(quán)限的時(shí)候慧妄,使用權(quán)限模式搜索只能看到文件名,例如:
[root@localhost test]#find.-perm 444
./test2
如果要看文件的具體權(quán)限剪芍,還要用"ll"命令査看塞淹。用"-exec"選項(xiàng)則可以一條命令搞定:
[root@localhost test]# find.-perm 444 -exec ls -l {}\;
-r--r--r-- 1 root root 0 6月 17 11:05 ./test2
#使用"-exec"選項(xiàng)罪裹,把find命令的結(jié)果直接交給"ls -l"命令處理
"-exec"選項(xiàng)的作用是把 find 命令的結(jié)果放入"{}"中饱普,再由命令 2 直接處理运挫。在這個(gè)例子中就是用"ls -l"命令直接處理,會(huì)使 find 命令更加方便费彼。
- -ok選項(xiàng)
"-ok"選項(xiàng)和"-exec"選項(xiàng)的作用基本一致滑臊,區(qū)別在于:"-exec"的命令會(huì)直接處理,而不詢(xún)問(wèn)箍铲;"-ok"的命令 2 在處理前會(huì)先詢(xún)問(wèn)用戶(hù)是否這樣處理雇卷,在得到確認(rèn)命令后,才會(huì)執(zhí)行颠猴。例如:
[root@localhost test]# find .-perm 444 -ok rm -rf{}\;
<rm…./test2>?y <-需要用戶(hù)輸入y,才會(huì)執(zhí)行
#我們這次使用rm命令來(lái)刪除find找到的結(jié)果关划,刪除的動(dòng)作最好確認(rèn)一下