Powershell| Schleifen mit Wortbestandteil

Nemac

Enthusiast
Thread Starter
Mitglied seit
03.04.2010
Beiträge
1.538
Ort
17033
Huhu ;)

Ich scheitere gerade an ersten PS versuchen ;(

Ich möchte alle Rechner prüfen, ob dort ein Bestimmter Dienst läuft. Allerdings weiß ich nicht wie die Rechner heißen (unterschiedliche Standorte, nicht immer Zugriff aufs AD)
dH ich kann mir vorher keine Datei bauen mit einer Rechnerliste.

Die Rechner haben aber alle Die selbe Namenskonvention StandortkürzelPC3Stelligezahl. Also zB Berlin BERPC001 oder BERPC150
Wie kippe ich das zusammen in eine Schleife? Die Idee war einfach alle Rechner durchzuprobieren... Als Notlösung hab ich jetzt sowas gebaut Für Rechnernamen 010-099

Code:
10..99 |%  {
Write-host BERPC0$_
Get-Service -ComputerName BERpc0$_ |Where-Object {$_.Name -eq "Dienst"}}

Und 100-999

Code:
100..999 |%  {
Write-host BERPC$_
Get-Service -ComputerName BERpc$_ |Where-Object {$_.Name -eq "Dienst"}}

Aber das muss doch auch schöner gehen?
Btw: kann ich nicht existierende oder offline PCs aus der Ausgabe ausfiltern, oder brauch ich vorher noch ein get-connection?

danke! ;)
 
Zuletzt bearbeitet:
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Es gibt ein Cmdlet namens "Get-ADComputer", vielleicht hilft das weiter?

Edit: Ah sehe gerade, dass die nicht immer Zugriff aufs AD haben. Eine gute und schnelle moeglichkeit die Rechner zu Filtern ist wahrscheinlich mit hilfe von "Resolve-DnsName", solange man immer die FQDN immer angibt (sprich "meinpc.meine.domane.").

Edit2: Uhm das 10-99 und 100-999 Problem zu beseitigen:
Code:
$a = $_.ToString("000")
 
Zuletzt bearbeitet:
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh