完全相反的 grep 選項的組合

完全相反的 grep 選項的組合

我做了:grep -r -H -L txt ~

grep -r -l -L txt ~

它列出了所有文件嗎?因為我得到的輸出非常長。

答案1

您的兩個命令完全相同...它們都遞歸您的主目錄並列出不包含模式“txt”的檔案。

為了證明它們具有相同的輸出,你可以這樣做

diff <(grep -r -H -L txt ~) <(grep -r -l -L txt ~)

稍微分解一下...

grep -r -H -L

是相同的

grep -r -L

-H(print filenames) 暗示任何grep涉及多個檔案的呼叫。這就是-L所做的,因為它列出了與指定模式不匹配的所有檔案。

下一個...

grep -r -l -L

是相同的

grep -r -L

這只是因為-l-L是衝突選項,在這種情況下,最後出現的標誌會覆蓋任何先前的衝突標誌。 (謝謝@don_crissti指出這一點。

所以你實際上有grep -r -Lgrep -r -L

相關內容