Ubuntu

列出文件時如何排除目錄?

  • January 19, 2021

列出目前目錄中的文件時如何排除目錄?

ls .

^ 將在列表中包含目錄。

試試這個:

find . -maxdepth 1 -not -type d

為了讓它完全等同於ls .你需要不顯示隱藏的目錄。

find . -maxdepth 1 -not -type d -and -not -name '.*'

這仍然會給您留下每個文件名前綴的“./”。這不是一個真正的問題,但我認為它有點醜陋。我去了:

ls -p | grep -v '/$'

這將為您提供一個看起來相同的列表,您也可以添加其他ls參數。添加一個--color=always,您將恢復您的 dircolors,或-a查看隱藏文件。

我喜歡亞歷山大的回答,因為他實際上依賴於所討論文件的文件系統特徵,所以它永遠不會被愚弄。我的回答會被名稱中最後一個字元為“/”的文件所迷惑。但這似乎是在自找麻煩。

引用自:https://serverfault.com/questions/368370