您好我知道如何使用LinuxUbuntu Linux操作系統:如何計算某些文件的編號在目錄
command:ls -l . | egrep -c '^-'.
統計所有文件的數量在一個目錄如果目錄下有test_1.jpg, train_1.jpg, test_2.jpg, train_1.jpg .....
。我只想統計test_*jpg
的數字,並不計算此目錄中train_*.jpg
的數量。如何使用Linux命令來做到這一點。謝謝!
您好我知道如何使用LinuxUbuntu Linux操作系統:如何計算某些文件的編號在目錄
command:ls -l . | egrep -c '^-'.
統計所有文件的數量在一個目錄如果目錄下有test_1.jpg, train_1.jpg, test_2.jpg, train_1.jpg .....
。我只想統計test_*jpg
的數字,並不計算此目錄中train_*.jpg
的數量。如何使用Linux命令來做到這一點。謝謝!
我覺得ls -1 |> wc -l
效果很好。請注意,這是一個負號,而不是減號字母l。
編輯:
所以,你的情況應該ls -1 test*.jpg | wc -l
工作。你可以調整通配符。在這種情況下,它將匹配從test
開始並以.jpg
結尾的任何內容。
感謝您的評論,我只想計算一下測試的數量_ *。jpg不包括火車_ *。jpg – tktktk0711
爲此更新了答案。其實,我沒有包含下劃線,所以也許你想讓glob得到'test _ *。jpg' –
謝謝你的回答。 – tktktk0711
如果您所有的文件都在同一目錄dir
,下面的命令將幫助你。
ll dir/test_*.jpg | wc -l
ls -al dir/test_*.jpg | wc -l
釋:
ls -al dir/test_*.jpg | wc -l
# ll is short for ls -al
# -l use a long listing format
# -a, --all
# do not hide entries starting with .
# wc -l print the newline counts.
只要你的文件名不能包含空格
a=(test*.jpg); echo ${#a[@]}
還要檢查shopt nullglob
檢測空列表。
或者在填充陣列之前設置IFS = $'\ n'',不要擔心空間。我可能會這樣做,並將'echo'改爲'find。 -type f -printf「%f \ n」' –
https://unix.stackexchange.com/questions/146760/count-files-in-a-directory-by-extension – 4EACH