Como Obter Informações de Espaço em Disco Usando PowerShell

  1. Obter Informações de Espaço em Disco Usando a Biblioteca PSDrive no PowerShell
  2. Obter Informações de Espaço em Disco Usando o Objeto WMI no PowerShell
Como Obter Informações de Espaço em Disco Usando PowerShell

O PowerShell pode gerar relatórios abrangentes sobre nossos sistemas operacionais Windows. Uma das métricas nesses relatórios é a lista das nossas unidades de sistema e suas informações de espaço em disco.

Neste artigo, aprenderemos alguns comandos que exportarão informações sobre todas as nossas unidades de sistema e aprenderemos a determinar quanto espaço em disco resta em nossa máquina usando PowerShell.

Obter Informações de Espaço em Disco Usando a Biblioteca PSDrive no PowerShell

A biblioteca PSDrive é um conjunto de comandos encarregados de gerenciar, criar e excluir unidades temporárias e permanentes usando PowerShell. Este primeiro método se concentrará no comando de consulta Get-PSDrive.

Ao executar o comando Get-PSDrive, podemos rapidamente obter as informações sobre todos os nossos repositórios montados em nosso sistema.

Código de Exemplo:

Get-PSDrive

Saída:

Name           Used (GB)     Free (GB) Provider      Root                                               CurrentLocation
----           ---------     --------- --------      ----                                               ---------------
Alias                                  Alias
C                 442.84         21.56 FileSystem    C:\                                               Users\KentMarion
Cert                                   Certificate   \
D                3507.38        218.63 FileSystem    D:\
Env                                    Environment
Function                               Function
G                 519.22        412.28 FileSystem    G:\
HKCU                                   Registry      HKEY_CURRENT_USER
HKLM                                   Registry      HKEY_LOCAL_MACHINE
Variable                               Variable
WSMan                                  WSMan

Como vimos na saída acima, o comando Get-PSDrive possui um atributo Name em seu objeto. Ao saber dessa informação, podemos isolar uma unidade específica filtrando seu nome de unidade e selecionando outro atributo de objeto para determinar seu tamanho livre.

Execute o seguinte comando para testar isso.

Código de Exemplo:

Get-PSDrive -Name C | Select-Object Name, Free

Saída:

Name        Free
----        ----
C    23061344256

No entanto, se compararmos nossa saída mais recente com a saída anterior, podemos ver que o tamanho livre foi convertido em bytes. Portanto, para reconverter o valor para gigabytes (GB), devemos definir uma expressão personalizada ao selecionar o atributo do objeto.

Execute o seguinte comando para testar isso.

Código de Exemplo:

Get-PSDrive -Name C | Select-Object Name, @{Name = "Free (GB)"; Expression = { [Math]::Round($_.Free / 1GB, 2) } }

Saída:

Name        Free (GB)
----        ----
C           21.41

O código de exemplo acima renomeia a coluna para Free (GB) e arredonda a saída do valor flutuante para duas casas decimais.

Obter Informações de Espaço em Disco Usando o Objeto WMI no PowerShell

Outro método para obter informações de espaço em disco é utilizando a classe de Objeto WMI. Esta classe funciona de forma semelhante ao PSDrive, mas a única diferença é que esta biblioteca pode consultar computadores remotos.

Código de Exemplo:

Get-WmiObject Win32_LogicalDisk -Filter "DeviceID='C:'" | Select-Object DeviceID, @{Name = "Free (GB)"; Expression = { [Math]::Round($_.FreeSpace / 1GB, 2) } }

Saída:

DeviceID Free (GB)
-------- ---------
C:           21.42

Para iniciar uma consulta em um computador remoto, adicione o parâmetro ComputerName dentro do comando Get-WMIObject.

Get-WmiObject Win32_LogicalDisk -ComputerName "REMOTE-PC" -Filter "DeviceID='C:'"
Está gostando dos nossos tutoriais? Inscreva-se no DelftStack no YouTube para nos apoiar na criação de mais vídeos tutoriais de alta qualidade. Inscrever-se
Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn