Linux作業系統之命令解釋:ls -l|grep ^-|wc -l

阳光天气發表於2024-11-04

前言
1、 ls -l|grep ^-| wc -l 含義:Linux作業系統下檢視當前目錄內的檔案數量(不包含子目錄中的檔案)(因為目錄的許可權首字母為d:代表資料夾)

2、分段解釋:
ls -l :列出當前目錄下所有檔案。

grep ^-:grep用於篩選前面管道傳來的資訊,篩選標準:[行首後緊跟著一個-符號](^代表行首)(表示過濾出每一行中的第一個字元為-的行內容)。

wc -l :統計檔案的行數
例項
當前目錄下有三個檔案,分別是檔案a、檔案b、檔案c:

其他相關命令
1、檢視某資料夾下檔案的個數
ls -l |grep "^-"|wc -l
2、檢視某資料夾下檔案的個數,包括子資料夾裡的檔案數量
ls -lR | grep ^- | wc -l

3、檢視某資料夾下資料夾的個數,包括子資料夾裡的資料夾
ls -lR | grep ^d | wc -l
注意:
ls -lR:ls命令的-R參數列示遞迴顯示當前路徑下的所有檔案(包含當前路徑下的子資料夾下的檔案)
解釋:
ls -l:表示長列表輸出該目錄下檔案資訊(注意這裡的檔案,不同於一般的檔案,可能是目錄、連結、裝置檔案等)
grep ^-:表示將長列表輸出資訊過濾一部分,只保留一般檔案,如果只保留目錄就是 ^d
wc -l:用於統計輸出資訊的行數,因為已經過濾得只剩一般檔案了,所以統計結果就是一般檔案資訊的行數,又由於一行資訊對應一個檔案,所以也就是檔案的個數

轉自:https://www.cnblogs.com/hls-code/p/16628825.html

相關文章