日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

Unix系統(tǒng)下Find命令的三個(gè)高級(jí)應(yīng)用( 二 )


二、把找到的文件清單保存到文件中 。
Find命令還可以根據(jù)文件的權(quán)限來查找 。如把用戶主目錄下所有用戶都可以讀寫的文件找出來 。這些文件所有的用戶都可以修改,為此具有一定的安全隱患 。系統(tǒng)工程師可能希望把這些文件對(duì)應(yīng)的清單保存到一個(gè)文件中,然后他們可以根據(jù)這份清單一個(gè)個(gè)的去調(diào)整權(quán)限 。如果只是顯示在屏幕中的話,對(duì)于他們后需的工作很不方便 ??偛荒軌蚰霉P抄下來或者每修改一個(gè)執(zhí)行一下查詢命令吧?為此把找到的文件清單保存到一個(gè)文本文件中是必需的 。要實(shí)現(xiàn)這個(gè)需求的話,可以采用如下命令:
Find /home –perm 666 –type f –ls >detail.txt
在這條命令中,條件語句中主要用了兩個(gè)參數(shù),分別為權(quán)限參數(shù)perm與文件類型參數(shù)-type 。在Unix操作系統(tǒng)中主要包括三類文件(其余幾類不怎么用),分別為普通文件、目錄文件與連接文件 。這里只需要尋找普通文件,為此就可以利用-type參數(shù)來指定需要查找的文件類型 。另外值得注意的是,如果在條件語句中有多個(gè)參數(shù)話,則其默認(rèn)會(huì)采取的是與運(yùn)算,即必須同時(shí)滿足以上兩個(gè)條件的文件才會(huì)被查找出來 。如果系統(tǒng)工程師需要采用或預(yù)算的話,則需要在參數(shù)之間加入-o可選項(xiàng),它表示條件之間的關(guān)系是或的關(guān)系,只需要滿足其中任何一個(gè)條件即可 。在查詢條件中還有一個(gè)很重要的操作符,即!操作符,它表示相反的條件 。如現(xiàn)在系統(tǒng)工程師想查找所有的目錄文件與普通文件(不考慮其他種類的特殊文件),則有兩種表示方法 。一是 –type f –o –type –d;二是! –type l 。很明顯采用了!操作符的第二種處理方式要簡(jiǎn)單的多 。為此系統(tǒng)工程師可以根據(jù)自己的需要來選擇合適的操作符 。
其次在第三部分的動(dòng)作參數(shù)中大家可以看到,在上面的例子中采用了exec關(guān)鍵字,但是在這個(gè)例子中卻沒有用到 。這是為什么呢?原來在find命令的定義中,由于ls命令與print命令比較常用,為此用到這兩個(gè)命令的時(shí)候,直接利用橫桿加上命令即可 。如果使用其他命令則需要加入exec關(guān)鍵字 。
三、交互式復(fù)制找到的文件 。
如現(xiàn)在用戶需要把某個(gè)文件夾下自己所創(chuàng)建的文件復(fù)制到另外一個(gè)目錄中 。但是并不是所有的文件,用戶希望能夠自己來選擇是否需要進(jìn)行復(fù)制 。要實(shí)現(xiàn)這個(gè)目的的話,就需要用到find命令中的ok參數(shù) 。在命令參數(shù)種加入-ok選項(xiàng),主要是告訴操作系統(tǒng)這個(gè)命令需要以交互式的方式來執(zhí)行 。當(dāng)用戶輸入y的話,操作系統(tǒng)就會(huì)執(zhí)行這些動(dòng)作;而輸入n的話,則會(huì)忽略 。
如要實(shí)現(xiàn)上面這個(gè)需求,可以執(zhí)行這個(gè)命令來實(shí)現(xiàn) 。Find /home –user oracle –ok cp {} /backup ;此時(shí)這個(gè)OK選項(xiàng)的意思就是當(dāng)把每個(gè)查找到的文件移動(dòng)到指定的目錄時(shí),不管目標(biāo)文件是否存在,都需要用戶進(jìn)行確認(rèn) 。只有用戶輸入y后,ok 后面的命令才會(huì)被執(zhí)行,否則的話就會(huì)被忽略不計(jì) 。除了OK選項(xiàng)外,有些命令本身就包含了一個(gè)交互性的選項(xiàng) 。如rm文件刪除命令 。若沒有帶-i交互性選項(xiàng)的話,則操作系統(tǒng)會(huì)直接刪除文件,而不會(huì)等待用戶確認(rèn) 。但是若在這個(gè)命令后面加入-i選項(xiàng)的話,則每刪除一個(gè)文件的話,系統(tǒng)就會(huì)提示用戶確認(rèn) 。只要命令本身就支持這個(gè)-i交互式選項(xiàng),那么在find命令中就可以直接使用這個(gè)參數(shù),而不需要利用ok選項(xiàng) 。在大部分命令中,這兩個(gè)選項(xiàng)的效果是相同的 。但是有些則不同 。如CP命令 。Cp –i命令表示把文件從一個(gè)地方復(fù)制到另外一個(gè)地方,如果目標(biāo)文件已經(jīng)存在的話,則會(huì)提醒用戶是否需要覆蓋;如果不存在的話則會(huì)直接復(fù)制過去 。但是采用ok 選項(xiàng)的話則表示無論目標(biāo)文件是否存在,都需要系統(tǒng)管理員一一進(jìn)行確認(rèn) 。也就是說-i選項(xiàng)只有在目標(biāo)文件存在的時(shí)候,可能需要覆蓋才會(huì)讓用戶進(jìn)行確認(rèn) 。而ok選項(xiàng)的話則根本不管目標(biāo)文件存在與否,都要進(jìn)行確認(rèn) 。到底需要采用哪個(gè)參數(shù),則就要根據(jù)用戶的需要了 。

推薦閱讀