У меня есть подключенный жесткий диск с несколькими пользователями, например:
/HDD1/user1
/HDD1/user2
/HDD1/user3
Я хотел бы заглянуть в папку каждого пользователя, найти все файлы, соответствующие выражению (скажем, "*.txt"
), а затем суммировать пространство, используемое всеми этими файлами, и сообщить об этом для каждого пользователя:
user1: x bytes
user2: y bytes
user3: z bytes
Я нашел каталоги всех файлов с:
find /HDD1/ -name "*.txt" | rev | cut -d"/" -f2- | rev | uniq > txtfiles.dat
Я думал, что буду использовать цикл для прохождения каждой строки в txtfiles.dat
, вычисляя использование диска в каждой папке, но это кажется очень громоздким. Есть ли более аккуратный способ сделать это? Что-то вроде du
, которое просматривает папку каждого пользователя, но считает только те файлы, которые соответствуют выражению?
du -ac $(find . -name '*.txt')
- person Paul   schedule 15.06.2015