Ubuntu 18.04 LTS с bash 4.4.20
Я пытаюсь подсчитать количество файлов в каждом каталоге, начиная с каталога, в котором я выполнял скрипт. Заимствуя у других кодеров, я нашел этот скрипт и изменил его. Я пытаюсь изменить его, чтобы получить итоговое значение в конце, но я не могу его получить. Кроме того, скрипт запускает одну и ту же функцию подсчета дважды каждый l oop, и это неэффективно. Я вставил эту дополнительную команду поиска, потому что не смог получить результаты вложенного ' find | w c -l 'для хранения в переменной. И все равно это не сработало.
Спасибо!
#!/bin/bash
count=0
find . -maxdepth 1 -mindepth 1 -type d | sort -n | while read dir; do
printf "%-25.25s : " "$dir"
find "$dir" -type f | wc -l
filesthisdir=$(find "$dir" -type f | wc -l)
count=$count+$filesthisdir
done
echo "Total files : $count"
Вот результаты. Следует подвести итоги. В противном случае это будет хорошо работать.
./1800wls1 : 1086
./1800wls2 : 1154
./1900wls-in1 : 780
./1900wls-in2 : 395
./1900wls-in3 : 0
./1900wls-out1 : 8
./1900wls-out2 : 304
./1900wls-out3 : 160
./test : 0
Total files : 0