Jump to content

BOfH_666

Expert Member
  • Gesamte Inhalte

    2.064
  • Registriert seit

  • Letzter Besuch

Alle erstellten Inhalte von BOfH_666

  1. Die eigentliche Antwort auf diese Frage, hat Dir Jan ja schon gegeben, aber sind denn in diesem Fall überhaupt zwei separate Abfragen nötig? Ich hab keine VMWare-Umgebung zur Verfügung aber es sieht für mich, danach aus, als sollte folgender Schnipsel genügen ... Get-VM XYZ* | Select-Object Name, PowerState, @{ N = "ToolsVersion"; E = { $_.Config.Tools.ToolsVersion } }, @{ N = "ToolStatus"; E = { $_.Guest.ToolsVersionStatus }}
  2. Auch wenn das Thema hier off topic ist ... ich gehe mal davon aus, dass Du die Dateinamen geändert hast, richtig? Und diese Änderungen zeigt dieser dumme Mediapayer jetzt nicht an, richtig? Hast Du schon mal was ID3-Tags oder MP3-Tag gehört? Lad Dir mal bitte das kleine Progrämmchen https://www.mp3tag.de runter - lies die Doku - lies die Doku nochmal - und dann kannst Du die gewünschten Änderungen durhcführen. Viel Spaß und n' netten Sonntagabend noch!
  3. ... wie immer ... es kommt darauf an. Was kann denn schon groß schiefgehen, richtig? Die Microsoft-Produkte und eingebauten Features sind mit hoher Wahrscheinlich eher unkritisch, aber wenn 3rd-Party-Software und Treiber im Spiel sind, ist ausgiebiges Testen sehr empfehlenswert. Was kostest es Dich/Deine Firma, wenn nach dem Upgrade irgendwas für Euer Business Essenzielles crasht? So lange alle eingesetzte Hard- und Software noch vom jeweiligen Hersteller supported wird und die gewünschten/vom Business geforderten Funktionalitäten liefert, spricht Nichts gegen einen Weiterbetrieb. Übrigens: der Support für Server 2012R2 endet in 2023.
  4. Hmmm .... na klar sagt Microsoft, dass Du das Betriebssystem von 2012R2 auf 2019 upgraden kannst. Microsoft kann Dir aber bestimmt nicht garantieren, dass danach alles (was vielleicht auch nicht alles Microsoft stammt) genau so läuft, wie man sich das wünscht. Mit der Evaulierungsversion solltest Du einen Test-Server erstellen und mit diesem dann alles das testen, was auf dem alten System läuft - dafür ist eine Evaulierungsversion da. Wenn das alles läuft, kannst Du Dir eine Lizenz und ein entsprechendes Installationsmedium besorgen und das "richtige" Upgrade druchführen ... und Daumen drücken, dass dann immernoch alles so läuft, wie man sich das wünscht.
  5. Du möchtest also Deinen produktiven Server 2012R2 mit einer Evaluierungsversion upgraden?
  6. <SCNR> "schick" und "Einzeiler" .... uuuuhhh ... da schüttelt's mich ... </SCNR>
  7. (Select-String -Path 'Pfad zu Deiner Text-Datei' -Pattern '(?<=Phone).+(?=$)' | Select-Object -ExpandProperty Matches).Value
  8. Supi. Markier doch bitte den Code-Schnipsel noch als Lösung. Dann finden andere, die das gleiche oder ein ähnliches Problem haben, die Lösung hoffentlich ein wenig schneller. Danke.
  9. Hallo Puschkin, wir liefern hier üblicherweise keinen gebrauchsfertigen Code auf Anfrage. Du wirst Dir schon selbst ein bissl Mühe geben müssen. Hast Du denn schon mal gesucht, ob Du was Passendes finden kannst. Meistens ist man ja nicht der Erste, der nach einer Lösung sucht. Wofür brauchst Du denn überhaupt so etwas Altertümliches? 2020 sollten doch etwas längere Pfade kein Problem mehr sein.
  10. Du machst es Dir aber auch schwer ... $CimSession = New-CimSession -ComputerName 'Print01' -Credential $Credentials Get-CimInstance -CimSession $CimSession -ClassName Win32_Printer | Select-Object -Property ShareName | Out-File C:\Drucker\Printer_List.txt Remove-CimSession -CimSession $CimSession Um die Probleme zu umgehen, dass es quasi keine einfache Möglichkeit gibt, Credentials sicher für die Benutzung in Scripten zu speichern, könntest Du einfach die Aufgabenplanung benutzen. Du erstellst eine entsprechende Aufgabe mit den nötigen Anmeldedaten und führst diese bei Bedarf aus. Dann lässt Du den ganzen Credentials-Kram im Script einfach weg.
  11. ... und Get-WmiObject sollte auch nicht mehr benutzt werden. Es gibt das moderne Get-CimInstance ... meistens auch noch schneller ... und mit dem Parameter -ComputerName kannst Du das auch remote benutzen ... ohne Invoke-Command.
  12. ... nur ein kleiner Tipp, um Deinen Code leichter lesbar zu machen. Bei cmdlets, die ziemlich viele Parameter erfordern oder verdauen, liest sich der Code leichter, wenn man Splatting benutzt ... so ungefähr: $SendMailProps = @{ To = 'empfaenger@maildomain.tld' Subject = 'HyperV-Replica Alarm' Body = Get-Content -Path $Info_Datei | Out-String SmtpServer = $Mail_Server From = $Mail_Absender } Send-MailMessage @SendMailProps Hier was zum Nachlesen: https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_splatting?view=powershell-7
  13. BOfH_666

    2x DHCP im LAN

    oooops ... hihihi ... hier ... nimmste das "h" ... und falls in Zukunft mal wieder ewtas fehlt ..... "abcdefghijklmnopqrstuvwxyz" ... nimmste Dir dann, was'de brauchst.
  14. BOfH_666

    2x DHCP im LAN

    Jaaa .... wenn ein LKW gegen enen flotten offenen Sportwagen antritt, hat er halt mal Pech.
  15. BOfH_666

    2x DHCP im LAN

    ... 'kenn ich auch so. Und wer zuerst kommt und malt zuerst, oder?
  16. Dienste werden doch nicht vom Domänen-Admin gestartet.
  17. Wenn ich die Doku richtig verstehe, liefert es die "Settings" der VM mit dem angegebenen Status. Gib den Befehl doch einfach mal auf der Konsole ein und sieh, was Du als Ausgabe erhältst. Wenn da kein "$true" dabei ist, wird's nix.
  18. Hier noch 'n bissl Extra-Lektüre : Use PowerShell delete a user profile (step-by-step guide) - https://adamtheautomator.com/powershell-delete-user-profile/
  19. hhhmmmm .... warte mal .... aber man kann die Denkfehler im Code manifestieren ...
  20. Du hast Tippfehler und Denkfehler in Deinem Code. foreach ($element in $object) { Invoke-RestMethod -Method Post -Uri $element.url -Body $element.body -Headers $element.header -OutFile .\log_$($element.body).out } Mit diesem Schnipsel schreibst Du jeden einzelnen "output" in eine eigene Datei. Wenn alles in einer Datei landen soll, musst Du diesen Export außerhalb der Schleife erledigen. Du könntest erstmal allen Output in einer Variable einsammeln und das dann gesammelt in eine Datei exportieren ... so ungefähr: $Result = foreach ($element in $object) { Invoke-RestMethod -Method Post -Uri $element.url -Body $element.body -Headers $element.header } $Result | Out-File -FilePath .\log.log
  21. den Code-Schnipsel mit dem man eine IP-Adresse in einen Namen auflöst habe ich Dir gepostet.
  22. .... immernoch dabei, den Hostnamen zu einer bestimmten IP-Adresse zu ermitteln? Du sagtest doch, dass Du in einer AD Domäne unterwegs bist, oder? Warum benutzt Du nicht eine von den Clients unabhängige Methode, um die gewünschte Information zu erhalten?
  23. .... "völlig neu" ist gut. Die Powershell ist inzwischen 13 Jahre alt. Du hast es also schon ziemlich lange geschafft, Dich einer neuen Technologie zu verweigern. ... und 13 Jahre sollten genügen, sich so ein Hype-Thema mal anzusehen. Das liegt meiner Meinung nach an der Art, wie Du Deine Fragen stellst. Du fragst nicht, wie man ein Problem lösen könnte, sondern was man an Deinem Code ändern kann, damit er läuft. Bei den meisten Fragen erklärst Du nicht mal, was das eigentliche/große Ziel ist. Hier in diesem Thread hast Du schon mehrere alternative Ansätze erhalten, die Du ja wohl noch prüfen wolltest. Davon abgesehen, liefern wir hier auch ungern fertige Lösungen frei Haus, wenn der Fragende nicht selbst ein wenig Mitarbeit anbietet. Die meisten von uns - Du vermutlich auch - werden dafür normalerweise bezahlt und machen das dann hier nicht kostenlos. ... und ja - bei schriftlicher Kommunikation in einem Forum, wo man eben keine Mimik und Gestik übertragen kann, kann man schon mal einen unerwünschten Eindruck vermitteln.
  24. Das ist der Eindruck, den Du vermittelst.
×
×
  • Neu erstellen...