Как узнать общий объем и количество файлов по расширению на USB диске
название сайта
Авторизация

Подсчитываем общий объем и количество файлов по расширению на USB диске

+1
linux0 комментариев
Появилась задача, подсчитать общий объем и количество файлов, отсортировав их по расширению, на внешнем диске.

Не спрашивайте для чего это нужно. Просто нужно узнать сколько места на диске занимают файлы с разными расширениями. 


Поиск и подсчет оъема файлов по расширению

На диске хранятся фотокопии документов в четырех форматах:

  1. *.CR2
  2. *.pdf
  3. *.JPG
  4. *.tif

Сразу стало понятно, что средствами Windows это сделать нельзя. Либо можно, но этого способа я не знаю. )

На помощь пришел линукс и его волшебные умения. 

Подсчет занятого места файлами с разными расширениями оказался не так сложен, как может показаться на первый взгляд. 
И для того, что бы всегда иметь шпаргалку под рукой, я решил написать данную статью. 

  • Все действия сведутся к
  • Монтированию USB диска,
  • подсчету количества и объема файлов с нужным расширением, 
  • скачиванием файлов отчета с сера, 
  • отмонтирование USB диска, 
  • приведение полученных данных к нужному виду.

Монтирование USB диска с файловой системой NTFS


Я пользуюсь серверами на Ubuntu, поэтому и установка нужного драйвера сделана с использованием apt-get install  


Установим ntfs-3g:

apt-get install ntfs-3g


Далее, подключим наш USB диск к компьютеру и введем команду:

sudo fdisk -l | grep NTFS


У меня был вот такой вывод:

/dev/sdb1  *      256 1953506623 1953506368  7.3T  7 HPFS/NTFS/exFAT

Теперь мы знаем, что наш линукс увидел диск как /dev/sdb1


Монтируем /dev/sdb1 для работы с ним.


Создадим директорию для монтирования диска:

sudo mkdir /media/hdd1


Монтируем диск:

sudo mount -t ntfs-3g /dev/sdb1 /media/hdd1

Диск подмонтирован и можно переходить к поиску файлов по расширению и подсчету.



Поиск файлов с нужным расширением и подсчет занимаего объема


Пример я приведу для файлов с расширением .JPG. Остальные расширения искались и подсчитываем по аналогии. 


Заходим в директорию куда мы ранее подмонтировали USB диск.

cd /media/hdd1



Запускаем команду, которая:

  1. Найдет все .JPG файлы на диске,
  2. покажет объем каждого файла, 
  3. укажет путь к файлу, 
  4. укажет название файла,
  5. выведет все полученные данные в тхт файл.
 
find . -type f -iname "*.JPG" -print0 | xargs -0 du -ch > output-JPG.txt

Теперь достаточно скачать файл output-JPG.txt с сервера. Я это делаю по средствам WinSCP на ваш комп под управлением Windows.

Далее открываем файл Notepad++ и сразу видим общее количество файлов - нумерация строк слева.

И чисто информативная информация - пусть к файлу, его название и объем.


Подсчет объема файлов

Количество файлов мы уже знаем, теперь осталось подсчитать общий объем всех  *.JPG файлов. Для этого воспользуемся другой командой.



find /media/hdd1 -type f -name '*.JPG' -exec du -ch {} + | grep total$



На выходе я получил объем все файлов в каждой директории: 

28G total
24G total
31G total
24G total
27G total
27G total
28G total
17G total
26G total
9.4G total
15G total
19G total
20G total
33G total
37G total
34G total
23G total
16G total
24G total
24G total
20G     total

Далее воспользовался поиском и заменой Notepad++ и подсчитал общий объем всех файлов в Microsoft Excel. Вы конечно же можете делать подсчет чем вам удобнее. )


Отмонтирование диска в линукс


Теперь осталось отмонтировать USB диск и отключить его от сервера.


Делается это командой:

sudo umount /media/hdd1


Таким нехитрым способом, теперь вы можете рутинную работу по подсчету файлов с нужным расширением, превратить в увлекательное занятие которое не заберет у вас много времени.

Читайте также

Отметьте картинки:*
new.thin.kiev.ua
Авторизация