隨筆-59  評論-31  文章-0  trackbacks-0
          這里總結一些常用到的關于find的命令的操作: 
          Find命令的一般形式為: 
          Shell代碼  收藏代碼
          1. # find pathname -options [-print -exec -ok]  

          讓我們來看看該命令的參數: 
          pathname find命令所查找的目錄路徑。例如用.來表示當前目錄,用/來表示系統根目錄。 
          -print find命令將匹配的文件輸出到標準輸出。 
          -exec  find命令對匹配的文件執行該參數所給出的shell命令。 
          -ok 和- exec的作用相同,只不過以一種更為安全的模式來執行該參數所給出的shell命令,在執行每一個命令之前,都會給出提示,讓用戶來確定是否執行. 
          find命令選項 
          1. -name   按照文件名查找文件 
          Java代碼  收藏代碼
          1. find -name test.txt  
          2. # find ~ -name "xxx.txt" -print// ~ 表示$HOME目錄  
          3. # find . -name "xxx.txt" -print// . 表示當前目錄  
          4. # find /etc -name "host*" -print// / 在指定目錄中查找  

          2.-perm   按照文件權限來查找文件 
          Java代碼  收藏代碼
          1. find -perm 755  
          2. # find ~ -perm 755 -print // 意義同name屬性  
          3. # find . -perm 755 -print  
          4. # find /home -perm 755 -print  

          3.-mtime -n +n   按照文件的更改時間來查找文件,-n表示文件更改時間距現在n天以內,+n表示文件更改時間距現在n天以前。 
          Java代碼  收藏代碼
          1. find -mtime -2  

          如果想使用find命令的這一選項來查找更改時間在兩個小時以內的文件,除非有一個現成 
          的文件其更改時間恰好在兩個小時以前,否則就沒有可用來比較更改時間的文件,為了解決 
          這一問題,可以首先創建一個文件并將其日期和時間戳設置為所需要的時間。這可以用touch 
          命令來實現,假設現在的時間是21:40,希望查找更改時間在兩個小時以內的文件,可以首先創建這樣 
          Java代碼  收藏代碼
          1. # touch -t 02032140 dstamp  
          2. # ls -l dstamp  
          3. -rw-r--r--    1 root     root            0  2月  3 21:40 dstamp  
          4. # find . -newer dstamp  

          一個文件 
          4.-newer file1  查找更改時間比文件file1新的文件。 
          Java代碼  收藏代碼
          1. # find -newer test.txt  

          5.-type   查找某一類型的文件 
          b - 塊設備文件。 
          d - 目錄。 
          c - 字符設備文件。 
          p - 管道文件。 
          l - 符號鏈接文件。 
          f - 普通文件。 
          Java代碼  收藏代碼
          1. # find -type d  
          2. # find . ! -type d //查找當前目錄下不是目錄文件的其他文件  
          3. # find ~ -type d//意義同name  
          4. # find /etc -type d//意義同name  

          6.使用size選項 
          可以按照文件長度來查找文件,這里所指的文件長度既可以用塊(block)來計量,也可以用字節來計量。以字節計量文件長度的表達形式為 Nc;以塊計量文件長度只用數字表示即可。 
          Java代碼  收藏代碼
          1. # find . -size -1000000c//當前目錄下查找文件長度小于1M字節的文件  
          2. # find . -size +100c  

          7 find 和 xargs 
          在使用find命令的-exec選項處理匹配到的文件時,find命令將所有匹配到的文件一起傳遞 
          給exee執行 
          Java代碼  收藏代碼
          1. # find . -name "core" -print | xargs echo "" >/tmp/core.log//整個系統中查找內存信息轉儲文件然后把結果保存到/tmp/core.log 文件中  
          2. # find /apps/audit -perm -7 -print | xargs chmod o-w//在/apps/audit目錄下查找所有用戶具有讀、寫和執行權限的文件,并收回相應的寫權限  
          3. # find / -type f -print | xargs grep "device"http://用grep命令在所有的普通文件中搜索device這個詞  
          posted on 2011-12-21 10:52 RoyPayne 閱讀(230) 評論(0)  編輯  收藏 所屬分類: linux
          主站蜘蛛池模板: 来安县| 固原市| 六安市| 灵宝市| 沙田区| 濮阳市| 全州县| 大新县| 拉萨市| 花莲市| 云南省| 祁阳县| 大田县| 巴彦县| 三原县| 鹿邑县| 保德县| 个旧市| 九龙县| 穆棱市| 仁寿县| 江源县| 中方县| 朝阳县| 修武县| 新营市| 石狮市| 高要市| 棋牌| 三亚市| 兴义市| 青龙| 台安县| 仙居县| 衡东县| 遵义县| 阳西县| 南阳市| 瓦房店市| 塘沽区| 贵州省|