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

使用 UNIX find 命令的高級技術(shù)

【使用 UNIX find 命令的高級技術(shù)】沒有什么能比得上探索和發(fā)現(xiàn)新的人、地方、事物所帶來的刺激 。領域可能有所不同,但有些原則卻是一樣的 。在這些原則中,有一條是記錄下您的旅程,另一條則是了解和使用工具 。
Unix?操作系統(tǒng)很像一片廣闊的、未經(jīng)標識的荒野 。當您在這樣的領域中旅行時,可以選擇一些日后能夠給您帶來幫助的工具 。find 命令便是這樣一種工具 。find 命令不僅能夠簡單地用來定位文件,正如本文將介紹的那樣,它還可以自動地執(zhí)行其他 UNIX 命令的序列,其中使用所查找到的文件名作為輸入 。
Find 的有關限制
所有稱職的操作系統(tǒng)都具有協(xié)助您查找相關內(nèi)容的工具 。與大多數(shù)工具不同的是,UNIX 中的 find 命令可以自動地對其查找到的文件執(zhí)行許多操作 。
圖形用戶界面 (GUI) 中的標準 find 工具允許您對所查找到的文件進行一些常規(guī)操作任務:您可以將它們標記為剪切、復制和粘貼,您可以將它們移動到一個新的位置,并且可以使用創(chuàng)建它們的應用程序來打開它們 。這些操作涉及到兩個或更多的步驟,并且不是自動完成的,即首先查找到文件,然后使用 GUI 為下一步的操作對它們進行標記 。這種方法對許多用戶來說沒有問題,但是 Explorer 需要的不僅是這些 。
UNIX 的 find 命令可以刪除、復制、移動和執(zhí)行其查找到的文件 。另外,使用 -exec 參數(shù)可以根據(jù)您所需要的 UNIX 命令的序列來自動地運行這些文件 。它甚至可以在對任何文件執(zhí)行這些操作前,進一步讓您進行確認 。
簡化文件系統(tǒng)的管理
與大多數(shù) UNIX 命令一樣,UNIX find 命令具有一長串令人生畏的選項和開關,它們會阻礙人們深入地學習該命令,但正是因為其范圍廣闊,真正的 Explorer 并不會被它們嚇倒 。一條好的通用原則在簡化一個復雜問題時都會經(jīng)過漫長的過程 。啟動一個 xterm,并嘗試執(zhí)行下面的命令:
$ find . -name *.gif -exec ls {} ;
-exec 參數(shù)中包含了真正有價值的操作 。當查找到匹配搜索條件的文件時,-exec 參數(shù)定義了將對這些文件進行什么操作 。該示例告訴計算機進行如下操作:
從當前文件夾開始往下搜索,緊跟在 find 之后,使用點號 (.) 。
定位所有名稱以 .gif 結(jié)尾的文件(圖形文件) 。
列出所有查找到的文件,使用 ls 命令 。
需要對 -exec 參數(shù)進行更深入地研究 。當查找到匹配搜索條件的文件名時,find 命令執(zhí)行 ls {} 字符串,用文件名和路徑代替文本 {} 。假設在搜索中查找到 saturn.gif 文件,find 將執(zhí)行如下所示的命令:
$ ls ./gif_files/space/solar_system/saturn.gif
本文余下的內(nèi)容建立在這條一般原則之上:仔細地使用 find 命令可以讓 Unix 文件系統(tǒng)的管理工作變得更加容易 。例如,如果您使用了 -fstype 參數(shù),find 命令可以根據(jù)查找到的文件所處的文件系統(tǒng)的類型來對命令進行相應的處理 。在 find 命令對查找到的文件執(zhí)行相應命令前將對您進行提示,這通常是非常有用的,您可以使用 -ok 參數(shù)告訴它繼續(xù)執(zhí)行該操作,接下來我們將對其進行介紹 。
可選的執(zhí)行
-ok 是 -exec 參數(shù)的一個重要的替代項,它的行為和 -exec 一樣,但它會提示您是否要對文件運行相應的命令 。假設您想要刪除 home 目錄中的大部分 .txt 文件,但希望能夠逐個文件地執(zhí)行該操作 。像 UNIX 中的 rm 命令那樣的刪除操作是很危險的,因為當使用像 find 這樣的自動化處理方式來查找文件時,它可能一不小心會刪除重要的文件,您也許希望在刪除這些系統(tǒng)查找到的文件之前對其進行仔細檢查 。
下面的命令列出了您的 home 目錄中所有的 .txt 文件 。要刪除這些文件,必須在 find 命令通過列出文件名提示您確認操作時輸入 Y 或者 y:

推薦閱讀