亚欧色一区w666天堂,色情一区二区三区免费看,少妇特黄A片一区二区三区,亚洲人成网站999久久久综合,国产av熟女一区二区三区

  • 發布文章
  • 消息中心
點贊
收藏
評論
分享
原創

linux find使用

2022-12-11 02:24:39
20
0

文件查找類別分:locate、find

local

  • 依賴于事先構建的索引,索引構建是在系統較為空閑時自動進行(周期任務),可以手動更新數據庫(updatedb),此工作機制類似于whatis(makewhatis)
  • 索引構建過程需要遍歷整個根文件系統,極消耗資源
  • 工作特點
    • 查找都快
    • 模糊查找(查找內容本身不是文件名,也包括文件路徑)
    • 非實時查找(原因需要構建索引庫)
    • 使用方式:locate KEYWORD

find

  • 實時查找工具,通過遍歷指定路徑下的文件系統完成文件查找
  • 工作特點
    • 查找速度略慢
    • 精確查找(查找文件名本身,而不包括路徑)
    • 實時查找
  • 語法
    • find [OPTION] [查找路徑] [查找條件] [處理動作]
      • 查找路徑:指定具體目標路徑,默認為當前目錄

      • 查找條件:指定查找標準,可以為文件名、大小、類型、權限等標準;默認為找出指定路徑下的所有文件

      • 處理動作:對符合條件的文件做什么操作;默認為輸出至屏幕

      • 查找條件

        • 根據文件名查找
          • -name "文件名稱":支持使用glob
          • -iname "文件名稱",不區分字母大小寫
          • -regex "PATTERN": 以PATTERN匹配整個文件路徑字符串,而不僅僅是文件名稱
        • 根據屬主、屬組查找
          • -user USERNAME
          • -group GROUPNAME
          • -uid UserID
          • -gid GroupID
          • -nouser:查找沒有屬主的文件
          • -nogroup:查找沒有屬組的文件
        • 根據文件類型查找
          • type TYPE
            • f:普通文件
            • d :目錄文件
            • l:符號鏈接文件
            • s:套接字文件
            • b:塊設備文件
            • c:字符設備文件
            • p:管道文件
        • 組合條件
          • 與:-a
          • 或:-o
          • 非:-not,!
          • 示例:
            • !A -a !B = !(A -o B)
            • !A -o !B = !(A -a B)
        • 根據文件大小來查找
          • size [+|-]#UNIT
            • 常用單位:k,M,G
            • #UNIT:表示范圍:(#-1,#]
            • -#UNIT:表示范圍:[0,#-1]
            • +#UNIT:表示范圍:(#,∞)
        • 根據時間戳
          • 以天為單位
            • -atime [+|-]#
              • #:表示范圍:[#,#+1)
              • -#:表示范圍:(0,#)
              • +#:表示范圍:[#+1,∞)
            • -mtime
            • -ctime
          • 以分鐘為單位
            • -amin
            • -mmin
            • -cmin
        • 根據權限查找
          • perm [+|-] MODE
            • MODE:精確匹配權限
            • -MODE:每一類對象都必須同時擁有為其指定的權限標準
            • +MODE:任何一類(u,g,o)對象的權限中只要能一位匹配即可
        • 例子:find /opt/soft/log/ -mtime +30 -name "*.log" -exec rm -rf {} ;
    • 處理動作
      • -print:默認處理動作,顯示至屏幕
      • -ls:類似于對查找到的文件執行"ls -l"命令
      • -delete:刪除查找到的文件
      • -fls /path/to/somefile:查找到的所有文件的長格式信息保存至指定文件中
      • -ok COMMAND {} \; 對查找到的每個文件執行由COMMAND指定的命令;
        • 對于每個文件執行命令之前,都會交互式要求用戶確認
      • -exec COMMAND {} \; 對查找到的每個文件執行由COMMAND指定的命令
        • {}:用于引用查找到的文件名稱自身
      • 注意:find傳遞查找到的文件至后面指定的命令時,查找到所有符合條件的文件一次性傳遞給后面的命令,有些命令不能接受過多參數,此時命令執行可能會失敗,另一種方法可規避此問題
        • find | xargs COMMAND

xargs 解析:
之所以能用到這個命令,關鍵是由于很多命令不支持|管道來傳遞參數,而日常工作中有有這個必要,所以就有了xargs命令,例如:
這個命令是錯誤的
find /sbin -perm +700 |ls -l
這樣才是正確的
find /sbin -perm +700 |xargs ls -l

xargs 可以讀入 stdin 的資料,并且以空白字元或斷行字元作為分辨,將 stdin 的資料分隔成為 arguments 。 因為是以空白字元作為分隔,所以,如果有一些檔名或者是其他意義的名詞內含有空白字元的時候, xargs 可能就會誤判了,如果需要處理特殊字符,需要使用-0參數進行處理。
選項解釋 :
-0 :當sdtin含有特殊字元時候,將其當成一般字符,想/'空格等

0條評論
0 / 1000
l****n
3文章數
0粉絲數
l****n
3 文章 | 0 粉絲
l****n
3文章數
0粉絲數
l****n
3 文章 | 0 粉絲
原創

linux find使用

2022-12-11 02:24:39
20
0

文件查找類別分:locate、find

local

  • 依賴于事先構建的索引,索引構建是在系統較為空閑時自動進行(周期任務),可以手動更新數據庫(updatedb),此工作機制類似于whatis(makewhatis)
  • 索引構建過程需要遍歷整個根文件系統,極消耗資源
  • 工作特點
    • 查找都快
    • 模糊查找(查找內容本身不是文件名,也包括文件路徑)
    • 非實時查找(原因需要構建索引庫)
    • 使用方式:locate KEYWORD

find

  • 實時查找工具,通過遍歷指定路徑下的文件系統完成文件查找
  • 工作特點
    • 查找速度略慢
    • 精確查找(查找文件名本身,而不包括路徑)
    • 實時查找
  • 語法
    • find [OPTION] [查找路徑] [查找條件] [處理動作]
      • 查找路徑:指定具體目標路徑,默認為當前目錄

      • 查找條件:指定查找標準,可以為文件名、大小、類型、權限等標準;默認為找出指定路徑下的所有文件

      • 處理動作:對符合條件的文件做什么操作;默認為輸出至屏幕

      • 查找條件

        • 根據文件名查找
          • -name "文件名稱":支持使用glob
          • -iname "文件名稱",不區分字母大小寫
          • -regex "PATTERN": 以PATTERN匹配整個文件路徑字符串,而不僅僅是文件名稱
        • 根據屬主、屬組查找
          • -user USERNAME
          • -group GROUPNAME
          • -uid UserID
          • -gid GroupID
          • -nouser:查找沒有屬主的文件
          • -nogroup:查找沒有屬組的文件
        • 根據文件類型查找
          • type TYPE
            • f:普通文件
            • d :目錄文件
            • l:符號鏈接文件
            • s:套接字文件
            • b:塊設備文件
            • c:字符設備文件
            • p:管道文件
        • 組合條件
          • 與:-a
          • 或:-o
          • 非:-not,!
          • 示例:
            • !A -a !B = !(A -o B)
            • !A -o !B = !(A -a B)
        • 根據文件大小來查找
          • size [+|-]#UNIT
            • 常用單位:k,M,G
            • #UNIT:表示范圍:(#-1,#]
            • -#UNIT:表示范圍:[0,#-1]
            • +#UNIT:表示范圍:(#,∞)
        • 根據時間戳
          • 以天為單位
            • -atime [+|-]#
              • #:表示范圍:[#,#+1)
              • -#:表示范圍:(0,#)
              • +#:表示范圍:[#+1,∞)
            • -mtime
            • -ctime
          • 以分鐘為單位
            • -amin
            • -mmin
            • -cmin
        • 根據權限查找
          • perm [+|-] MODE
            • MODE:精確匹配權限
            • -MODE:每一類對象都必須同時擁有為其指定的權限標準
            • +MODE:任何一類(u,g,o)對象的權限中只要能一位匹配即可
        • 例子:find /opt/soft/log/ -mtime +30 -name "*.log" -exec rm -rf {} ;
    • 處理動作
      • -print:默認處理動作,顯示至屏幕
      • -ls:類似于對查找到的文件執行"ls -l"命令
      • -delete:刪除查找到的文件
      • -fls /path/to/somefile:查找到的所有文件的長格式信息保存至指定文件中
      • -ok COMMAND {} \; 對查找到的每個文件執行由COMMAND指定的命令;
        • 對于每個文件執行命令之前,都會交互式要求用戶確認
      • -exec COMMAND {} \; 對查找到的每個文件執行由COMMAND指定的命令
        • {}:用于引用查找到的文件名稱自身
      • 注意:find傳遞查找到的文件至后面指定的命令時,查找到所有符合條件的文件一次性傳遞給后面的命令,有些命令不能接受過多參數,此時命令執行可能會失敗,另一種方法可規避此問題
        • find | xargs COMMAND

xargs 解析:
之所以能用到這個命令,關鍵是由于很多命令不支持|管道來傳遞參數,而日常工作中有有這個必要,所以就有了xargs命令,例如:
這個命令是錯誤的
find /sbin -perm +700 |ls -l
這樣才是正確的
find /sbin -perm +700 |xargs ls -l

xargs 可以讀入 stdin 的資料,并且以空白字元或斷行字元作為分辨,將 stdin 的資料分隔成為 arguments 。 因為是以空白字元作為分隔,所以,如果有一些檔名或者是其他意義的名詞內含有空白字元的時候, xargs 可能就會誤判了,如果需要處理特殊字符,需要使用-0參數進行處理。
選項解釋 :
-0 :當sdtin含有特殊字元時候,將其當成一般字符,想/'空格等

文章來自個人專欄
文章 | 訂閱
0條評論
0 / 1000
請輸入你的評論
0
0