linux find depth引數理解
-depth Process each directory’s contents before the directory itself.
引數-depth 的意思是:在處理目錄以前首先處理目錄下的子內容。
也即是說在不加-depth的時候, 處理順序是首先處理目錄本身,然後處理目錄下的子內容。加不加-depth引數,會影響輸出結構的輸出順序。
-------------------------------------------------------------
例如下面的兩個命令,輸出結果是相反的:
先輸出子內容,再輸出上層目錄內容,直到最頂層:
[[email protected]
test/test1/test2/test3
test/test1/test2
test/test1
test
先輸出頂層目錄,再輸出下面的各層子目錄內容,直到最低層:
[[email protected] ~]$ find test ! -empty
test
test/test1
test/test1/test2
test/test1/test2/test3
---------------------------------------------------------------
去掉頂層目錄test的那行輸出, 加-mindepth 1(可以看到輸出結果為3行,少了一會"test")。因為預設是包含頂層目錄的:
[
test/test1/test2/test3
test/test1/test2
test/test1
[[email protected] ~]$ find test -mindepth 1 ! -empty
test/test1
test/test1/test2
test/test1/test2/test3
原文:http://blog.itpub.net/27042095/viewspace-1084430/