Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Partitionen auslesen

Frage Entwicklung Batch & Shell

Mitglied: TlBERlUS

TlBERlUS (Level 2) - Jetzt verbinden

13.05.2014 um 18:54 Uhr, 1523 Aufrufe, 2 Kommentare

Hi Zusammen,

ich probiere mich momentan an der Powershell, stoße momentan leider auf das Problem, dass sich mein Skript weigert, dass zu tun was ich will...
Oder ich kann ihm nich mitteilen, was ich will, was wahrscheinlicher ist
Aber egal, mein Problem ist, dass das Skript bei PCs mit mehreren Partitionen folgenden Fehler ausgibt:

Fehler beim Aufrufen der Methode, da [System.Object[]] keine Methode mit dem Namen "op_Division" enthält.
In C:\Users\PC\Desktop\Freespace.ps1:14 Zeichen:1

$size2 = $sizebit2/1024/1024/1024


Skript

function all{
foreach ($a in $array) {
$computer2 = $a
$letter2 = Get-WmiObject win32_volume -computername $computer2 | Select-Object Name, freespace | where Name -like "*:\" | where freespace -gt 0.5 | Select -expand Name
$sizebit2 = Get-WmiObject win32_volume -computername $computer2 | Select-Object Name, freespace | where Name -like "*:\" | where freespace -gt 0.5 | Select -expand freespace
$size2 = $sizebit2/1024/1024/1024
$sizegb2 = "{0:N2}" -f $size2
$outputBox.AppendText("$Computer2 $letter2 $sizegb2 GB Frei
")
$letter2 = " "
$size2= " "
$sizebit2 = " "
$sizegb2 = " "
$computer2 = " "
}
}

function single{
$computer1 = $objpc1.text
$letter1 = Get-WmiObject win32_volume -computername $computer1 | Select-Object Name, freespace | where Name -like "*:\" | where freespace -gt 0.5 | Select -expand Name
$sizebit1 = Get-WmiObject win32_volume -computername $computer1 | Select-Object Name, freespace | where Name -like "*:\" | where freespace -gt 0.5 | Select -expand freespace
$size1 = $sizebit1/1024/1024/1024
$sizegb1 = "{0:N2}" -f $size1
$outputBox.AppendText("$computer1 $letter1 $sizegb1 GB Frei
")
$letter1 = " "
$sizebit1 = " "
$size1 = " "
$sizegb1 = " "
$computer1 = " "
}

Habt ihr eine Idee warum das nich funktioniert, bzw. was ich anpassen muss?

Grüße,

Tiberius
Mitglied: Xaero1982
13.05.2014 um 19:18 Uhr
Hi,

was willst du denn überhaupt erreichen?

Benutze bitte code Tags <"code"> <"/code"> ohne ""

Was gibt er denn aus bei $sizebit2 =

Gruß
Bitte warten ..
Mitglied: colinardo
LÖSUNG 13.05.2014, aktualisiert 18.06.2014
Hallo Tiberius,
dein Problem ist folgendes: Wenn ein System mehrere Partitionen hat, bekommst du nicht nur eine Zahl zurück, sondern ein Array aus Zahlen, also für jede Partition auf die die Bedingungen zutrifft, erhältst du den freien Speicherplatz ! Hier musst du entweder deine Bedingungen so einschränken das nur eine Partition zurückgegeben wird, oder auf den ersten Eintrag mit select -First 1 -ExpandProperty Freespace einschränken, oder das Ergebnis des Arrays addieren wenn das gewünscht ist.

Um den freien Speicher aller Partitionen zu addieren kannst du es z.B. so machen:
01.
$sizebit2 = (gwmi win32_volume -computername $computer2 | ?{$_.Name -like "*:\" -and $_.Freespace -gt 0.5 } | measure -Sum -Property Freespace).Sum
oder du listest dir direkt zu jeder Partition jeweils den Namen und den freien Speicher in GB mit einer Calculated Property auf:
01.
gwmi win32_volume | ?{$_.Name -like "*:\" -and $_.Freespace -gt 0.5 } | select Name,@{Name="FreespaceInGB";e={[Math]::Round($_.Freespace/(1024*1024*1024),2)}}
Das gibt ein Objekt zurück mit den Partitionsnamen und direkt berechneter Größe in GB
Beispiel
Name FreespaceInGB 
---- ------------- 
D:\         149,43 
C:\           87,1
wenn du das ganze komplett als String haben willst hängst du dem Konstrukt einfach noch ein format-table -AutoSize an, oder formatierst es nach Wunsch mit einer foreach-Schleife.

Grüße Uwe
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Mit Batch einen Dateityp auf Partition suchen (2)

Frage von M4tze521999 zum Thema Batch & Shell ...

Festplatten, SSD, Raid
RAW Partition retten (15)

Frage von cardisch zum Thema Festplatten, SSD, Raid ...

Speicherkarten
Festplatte verkleinern und andere Partition vergrößern (5)

Frage von planetIT zum Thema Speicherkarten ...

Verschlüsselung & Zertifikate
Verschlüsselung: Mit Veracrypt lässt sich nur eine Partition verschlüsseln (1)

Frage von NCCTech zum Thema Verschlüsselung & Zertifikate ...

Neue Wissensbeiträge
Multimedia

Raspberry Pi als Digital-Signage-Computer

(1)

Information von BassFishFox zum Thema Multimedia ...

Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(16)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
Freigabe aus anderem Netz nicht erreichbar (33)

Frage von McLion zum Thema Router & Routing ...

Visual Studio
Vb.net-Tool zum Erzeugen einer Outlook-E-Mail (24)

Frage von ahstax zum Thema Visual Studio ...

Batch & Shell
Batch Programm verhalten bei shoutdown -p (19)

Frage von Michael-ITler zum Thema Batch & Shell ...

Windows Netzwerk
Netzwerk Neustrukturierung (15)

Frage von IT-Dreamer zum Thema Windows Netzwerk ...