簡體   English   中英

如何使用linux終端計算文件夾中的不同文件類型?

[英]How can I count the different file types within a folder using linux terminal?

嘿,我明星如何在文件夾中遞歸計算不同數量的文件類型/擴展名。 我還需要將它們打印到.txt文件中。

例如,我有10個txt的20個.docx文件混合在多個文件夾中。

幫我 !

find ./ -type f |awk -F . '{print $NF}' | sort | awk '{count[$1]++}END{for(j in count) print j,"("count[j]" occurences)"}'

獲取所有帶有find文件名,然后使用awk獲取擴展名,然后再次使用awk來計算出現次數

只需使用bash:此代碼需要版本4

#!/bin/bash
shopt -s globstar nullglob
declare -A exts

for f in * **/*; do
    [[ -f $f ]] || continue     # only count files
    filename=${f##*/}           # remove directories from pathname
    ext=${filename##*.}
    [[ $filename == $ext ]] && ext="no_extension"
    : ${exts[$ext]=0}           # initialize array element if unset
    (( exts[$ext]++ ))
done

for ext in "${!exts[@]}"; do
    echo "$ext ${exts[$ext]}"
done | sort -k2nr | column -t

到目前為止,這個似乎尚未解決,所以這里有多遠我計算文件並訂購它們:

find . -type f | sed -n 's/..*\.//p' | sort -f | uniq -ic

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM