Windows

Jinsi ya kupata uwezo wa Disk na nafasi ya bure ya kompyuta za mbali

Kupata uwezo wa diski na nafasi ya bure ya kompyuta ya ndani ni rahisi lakini si rahisi kutoka kwenye kompyuta ya mbali, hasa kupitia interface ya GUI. Ni rahisi kutumia nguvu za PowerShell na hapa ndivyo unavyoweza kufanya.

Pata-PSDrive ni cmShelet ya PowerShell ya asili inayoweka orodha zote za kuhifadhi kwenye mfumo wako wa ndani.

Unaweza kupunguza chini tu orodha ya mifumo ya faili kwa kusambaza matokeo kwa Ambapo Kifungu.

Pata-PSDrive | Ambapo {$ _. Free -gt 0}

Kwa kuwa cmdlet haina -ComputerName kubadili kufikia kompyuta za mbali, tunahitaji Ruhusu-Amri kuendesha cmdlet kwenye kompyuta mbali.

Kuomba-Amri -Kutumia Name kijijini kijijini {Kupata-PSDrive | Ambapo {$ _. Free -gt 0}}

Hii inafanya kazi vizuri tu wakati una WinRM na PSRemoting imewezeshwa kwenye kompyuta za mbali. Na ndiyo sababu nipenda Kupata-WmiObject njia bora zaidi.

Pata-WmiObject Win32_LogicalDisk -ComputerName kijijini kijijini -Filter DriveType = 3 | Chagua-Kitu cha Kidhibiti, FreeSpace, Ukubwa

Ili kuorodhesha ukubwa katika muundo wa GB,

Pata-WmiObject Win32_LogicalDisk -ComputerName kijijini kijijini -Filter DriveType = 3 | Chagua-Object DeviceID, @ {'Jina' = 'Ukubwa (GB)'; 'Expression' = {[math] :: truncate ($ _. Ukubwa / 1GB)}}, @ {'Jina' = 'Freespace (GB)'; 'Expression' = {[math] :: truncate ($ _. Freespace / 1GB)}}

Je, ni kuhusu kuonyesha matokeo na watoa maelfu maelfu?

Pata-WmiObject Win32_LogicalDisk -ComputerName kijijini kijijini -Filter DriveType = 3 | Chagua-Object DeviceID, @ {'Jina' = 'Ukubwa (GB)'; '[Expression] = {[string] :: Format (' {0: N0} ', [math] :: truncate ($ _. Ukubwa / 1GB))}}, @ {' Jina '=' Freespace (GB) ' ; 'Expression' = {[string] :: Format ('{0: N0}', [math] :: truncate ($ _ freespace / 1GB))}}

Unaweza kufikia kompyuta nyingi za kijijini kutoka kwa moja kukimbia kwa kuweka wote baada ya -ComputerName kubadili, kutenganishwa na comma.

Pata-WmiObject Win32_LogicalDisk -ComputerName kompyuta1, kompyuta2, Drive3 -Filter DriveType = 3 | Chagua-Object DeviceID, @ {'Jina' = 'Ukubwa (GB)'; '[Expression] = {[string] :: Format (' {0: N0} ', [math] :: truncate ($ _. Ukubwa / 1GB))}}, @ {' Jina '=' Freespace (GB) ' ; 'Expression' = {[string] :: Format ('{0: N0}', [math] :: truncate ($ _ freespace / 1GB))}}

Pia, hapa ni script mimi kuweka pamoja ambayo ina bora formatted pato.

$servers = @("computer1", "computer2", "computer3")

Foreach ($server in $servers)
{
    $disks = Get-WmiObject Win32_LogicalDisk -ComputerName $server -Filter DriveType=3 | 
        Select-Object DeviceID, 
            @{'Name'='Size'; 'Expression'={[math]::truncate($_.size / 1GB)}}, 
            @{'Name'='Freespace'; 'Expression'={[math]::truncate($_.freespace / 1GB)}}

    $server

    foreach ($disk in $disks)
    {
        $disk.DeviceID + $disk.FreeSpace.ToString("N0") + "GB / " + $disk.Size.ToString("N0") + "GB"

     }
 }

chanzo

Tags

Acha Reply

Anwani yako ya barua si kuchapishwa. Mashamba required ni alama *

Rudi kwenye kifungo cha juu