Linux 命令中 find 和 xargs 命令的用法


find 命令(一)

find 命令主要作用是沿着文件層次結構向下遍歷,匹配符合條件的文件,並執行相應的操作。Linux 下 find 命令提供了相當多的查找條件,功能很強大,對應的學習難度也比較大。

(1)命令格式

find [選項] [搜索路徑] [表達式]

默認路徑是當前目錄,默認表達式為-print。

表達式可能由下列成份組成:操作符、選項、測試表達式以及動作。

(2)常用參數

參數 描述
-print find 命令將匹配的文件輸出到標准輸出
-exec find 命令對匹配的文件執行該參數所給出的 shell 命令
-name 按照文件名查找文件
-type 查找某一類型的文件
-prune 使用這一選項可以使 find 命令不在當前指定的目錄中查找,如果同 時使用-depth 選項,那么-prune 將被 find 命令忽略
-user 按照文件屬主來查找文件
-group 按照文件所屬的組來查找文件
-mtime -n +n 按照文件的更改時間來查找文件,-n 表示文件更改時間距現在小於 n天,+n 表示文件更改時間距現在大於 n 天,find 命令還有-atime 和 -ctime 選項

 

find 命令(二)

下面將介紹如何根據文件類型、權限、所有者及操作符來查找匹配文件。

根據文件類型來查找文件,使用-type 選項。

根據文件權限查找文件,使用-perm 選項。所有者使用-user 選項。

另外,find 命令可以通過邏輯操作符來創建更復雜的邏輯關系,例如 find 命令(一)中的例三就使用了操作符-or。

 

xargs 命令

我們可以用管道將一個命令的 stdout(標准輸出)重定向到另一個命令的 stdin(標准輸入)。但有些命令只能以命令行參數的形式接收數據,而無法通過 stdin 接收數據流。在這種情況下,無法通過管道將數據重定向給這些命令。

這時 xargs 就可以發揮它的作用了,xargs 命令可以從標准輸入接收輸入,並把輸入轉換為一個特定的參數列表。

(1)命令格式

command | xargs [選項] [command]

xargs 命令應該緊跟在管道操作符之后,因為它以標准輸入作為主要的源數據流。

(2)常用參數

參數 描述
-n 指定每行最大的參數數量
-d 指定分隔符

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM