Ls

僅列出正常文件

  • November 6, 2018

我希望用( )列出目前目錄中所有屬於正常文件(即不是目錄、連結或特殊文件)的inode 。ls -la``ll

我去man ls尋找type並發現只有這個我在這方面不太了解:

–indicator-style=WORD

將帶有樣式 WORD 的指示符附加到條目名稱:無(預設),斜杠(-p),文件類型(–file-type),分類(-F)

我怎樣才能只列出正常文件ls -lall作為我在 Ubuntu 18.04 中的快捷方式)?

find . -maxdepth 1 -type f -ls

這將為您提供目前目錄中的正常文件,其格式類似於您將獲得的格式ls -lisa(但僅顯示正常文件,這要歸功於-type -f命令行)。

請注意,-ls(由 BSD 引入)和-maxdepth(由 GNU 引入find)是非標準(儘管現在很常見)擴展。POSIXly,你可以這樣寫:

find . ! -name . -prune -type f -exec ls -ldi {} +

(這也有對文件列表進行排序的好處,但如果目前目錄中有大量文件,則可能是獨立的大塊)。

引用自:https://unix.stackexchange.com/questions/480035