Команда, которую вы написали - это почти все, что нам нужно.
Мы начнем с перечисления всех файлов, размер которых мы хотим подсчитать.
$ find . -type f -newerat 2020-02-01 ! -newerat 2020-02-11
./c/1
./a/1
./a/3
./a/2
./b/1
./b/2
Это дает нам список все файлы, которые мы хотим рассмотреть. Теперь нам нужно получить размер каждого файла. Как сказал @XrXca в комментариях, мы можем использовать опцию find printf
, чтобы получить размер каждого файла в байтах.
$ find . -type f -newerat 2020-02-01 ! -newerat 2020-02-11 -printf="%s\\n"
4
4
4
4
4
4
Это дает нам хороший список размеров файлов.
Теперь нам просто нужно их подвести. Для этого мы можем использовать немного awk:
$ find . -type f -newerat 2020-02-01 ! -newerat 2020-02-11 -printf="%s\\n" | awk '{s+=$1} END {print s}'
24
, и это совокупный размер отфильтрованных файлов в байтах.