matthes74 0 Geschrieben 5. November 2014 Melden Teilen Geschrieben 5. November 2014 Hi, ich habe probleme mit meinem Script. Auf einem aktuellem Windows Host läuft es, auf einem mit älterem Patchstand nicht, s.u. mit Powershell Version 4 auf W2012R2 bekomme ich mit folgendem cmdlet folgende Antwort (bitte achtet nicht auf das "Get-DcsPool", ist ein cmdlet des Softwareanbieters, sollte ja erstmal egal sein): Get-DcsPool -Pool DX80-test_dcs2 | Get-DcsPerformanceCounter | foreach BytesTotal 0 mit Powershell Version2 auf W2008R2 sieht das ganze so aus: Get-DcsPool -Pool DS8700 | Get-DcsPerformanceCounter | foreach BytesTotalForEach-Object : Cannot bind parameter 'Process'. Cannot convert the "BytesTotal" value of type "System.String" to type "System.Management.Automation.ScriptBlock".At line:1 char:63+ Get-DcsPool -Pool DS8700 | Get-DcsPerformanceCounter | foreach <<<< BytesTotal + CategoryInfo : InvalidArgument: (:) [ForEach-Object], ParameterBindingException + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Commands.ForEachObjectCommand Jetzt weiß ich nicht, wie ich da an den Wert komme. Wenn ich eine where-object Abfrage statt dem foreach verwende, bekomme ich zwar meine BytesTotal angezeigt, aber leider nicht nur den Wert, sondern auch BytesTotal: BytesTotal------0 und damit kann ich nat. in meinem Script nichts anfangen. ich brauche nur die Zahl als Ergebnis. wer kann mir helfen? Vielen Dank schon mal und Grüße, Matthes Zitieren Link zu diesem Kommentar
Cybquest 36 Geschrieben 5. November 2014 Melden Teilen Geschrieben 5. November 2014 Probiers mal mit foreach { $_.BytesTotal} Zitieren Link zu diesem Kommentar
matthes74 0 Geschrieben 5. November 2014 Autor Melden Teilen Geschrieben 5. November 2014 Hallo Frank, vielen Dank, hast mir sehr geholfen, hat funktioniert! :thumb1: Matthes Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.