Резюме: Microsoft Scripting Guy, Ed Wilson рассказывает об использовании Windows PowerShell для подсчета фотографий и определения свободного места на файловом томе.
Определяем количество фотографий
Я сделал около 800 фотографий в Праге. Но сколько же фотографий я сделал за все время путешествия? Для подсчета я могу воспользоваться Windows PowerShell. Моя камера сохраняет фотографии в двух форматах: RAW CR2 и JPG. Ниже приведена команда для Windows PowerShell 3.0 (используем переключатель -File).
PSC:\> Get-ChildItem f: -Recurse -Include *.cr2,*.jpg -File | measure
Count : 9417
Average :
Sum :
Maximum :
Minimum :
Property :
Чтобы сделать то же самое в Windows PowerShell 2.0, мне потребуется следующая команда:
PS C:\> Get-ChildItem f: -Recurse -Include *.cr2,*.jpg | where {!($_.ispscontainer) } | measure
Count : 9417
Average :
Sum :
Maximum :
Minimum :
Property :
Если меня интересует только количество файлов CR2, я воспользуюсь следующей командой:
PS C:\> Get-ChildItem f: -Recurse -filter *.cr2 -File | measure
Count : 4706
Average :
Sum :
Maximum :
Minimum :
Property :
Версия команды для Windows PowerShell 2.0:
PS C:\> Get-ChildItem f: -Recurse -filter *.cr2 | where {!($_.ispscontainer) } | measure
Count : 4706
Average :
Sum :
Maximum :
Minimum :
Property :
То же самое я могу сделать для подсчета файлов JPG:
PS C:\> Get-ChildItem f: -Recurse -filter *.jpg -File | measure
Count : 4711
Average :
Sum :
Maximum :
Minimum :
Property :
Определяем свободное пространство
Поскольку я сделал около 10000 фотографий, меня беспокоит объем свободного пространства. На моем ноутбуке с Windows 8 я могу быстро получить эту информацию используя следующую команду:
Get-Volume -DriveLetter f
Команда и ее результаты приведены на рисунке ниже.
При использовании Windows PowerShell 2.0 (или Windows PowerShell 3.0 на компьютере с операционной системой не Windows 8) вам нужно будет запросить класс WMI Win32_Volume (он присутствует в WindowsServer 2003 и более поздних операционных системах – но не в WindowsXP). Следующая команда иллюстрирует эту технику, где GWMI – это алиас для командлета Get-WMIObject и FT – алиас для командлета Format-Table. Поскольку WMI возвращает информацию об объеме диска в байтах, для более удобного восприятия лучше перевести его хотя бы в гигабайты.
gwmi win32_volume -Filter «driveletter = ‘f:'» | ft driveletter, label, @{LABEL=’Size GB’;EXPRESSION = {$_.capacity/1GB}}, @{LABEL=’FREE GB’;EXPRESSION = {$_.FreeSpace/1GB}} –AutoSize
Команда и ее результаты приведены на рисунке ниже.
Автор:
Ed Wilson, Microsoft Scripting Guy
Оригинал:
Страницы в социальных сетях:
Twitter: https://twitter.com/vsseth
Facebook: https://fb.com/inpowershell
VKontakte: https://vk.com/inpowershell