find
手冊頁說-print
操作的值為true
,那麼為什麼這個指令
find /home \( -not -print \)
總是列出目錄中的所有檔案?
答案1
該-print
操作確實具有 true 值,但僅後它打印。
請注意,這會列印所有文件兩次:
$ find . -print -print
.
.
./file1
./file1
./file2
./file2
儘管有兩個列印語句,但該命令僅列印一次:
$ find . \( -not -print \) -print
.
./file1
./file2
在這裡,第一個-print
評估結果為 true,因此-not -print
評估結果為 false。因此,不執行第二次列印。