Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Paramterübergabe an PowerShell Script

Frage Microsoft Windows Tools

Mitglied: Otaris

Otaris (Level 1) - Jetzt verbinden

22.01.2014, aktualisiert 13:28 Uhr, 1344 Aufrufe, 4 Kommentare

Hallo zusammen,

ich habe ein wenig mit PowerShell herumexperimentiert und bräuchte nun eine kleine Hilfestellung, da ich nicht mehr weiterkomme:


Per PS Befehl möchte ich die Beschreibung (eingetragenes Datum) der Useraccounts auslesen, dazu habe ich mir folgendes erarbeitet:

Get-ADUser -properties * -Filter 'Description -like "**.01.*"' | FT Name, Description



Das klappte auch soweit ganz gut und ich habe den Befehl in ein Script importiert, dass ich dann per CMD aufrufen kann

Script:

  1. Active-Directory-Befehle (AD-Modul) in PowerShell laden
Import-Module ActiveDirectory

  1. Variable für Zeilenumbruch definieren
$nL = [Environment]::NewLine

Get-ADUser -properties * -Filter 'Description -like "**.01.*"' | FT Name, Description



Der Aufruf per CMD erfolgt dann folgendermaßen: powershell.exe -command C:\test.ps1
Auch das funktioniert wunderbar.


Nun möchte ich im nächsten Schritt beim Aufruf des Scripts meinen Filter ändern.

Dazu wäre es mir am liebsten, wenn ich das Script mit dem Parameter JAN aufrufe, soll folgender Befehl ausgeführt werden:
Get-ADUser -properties * -Filter 'Description -like "**.01.*"' | FT Name, Description

Mit dem Parameter FEB soll folgender Befehl ausgeführt werden:
Get-ADUser -properties * -Filter 'Description -like "**.02.*"' | FT Name, Description

etc...

An dieser Stelle komme ich aber nicht mehr weiter. Geht das überhaupt? Wenn ja, wie?
Muss ich dann jeden einzelnen Befehl im Script als Variable definieren, oder kann ich auch nur die eine Zahl die geändert werden soll als Variable definieren?

Für ein wenig Hilfe wäre ich dankbar.
Mitglied: colinardo
LÖSUNG 22.01.2014, aktualisiert um 13:28 Uhr
Hallo Otaris,
kein Problem, die Parameterübergabe machst du so: (Dabei ist wichtig das param() in der ersten Zeile des Scriptes stehen muss)
01.
param ( 
02.
    [String] $par1 
03.
04.
$filter = "" 
05.
switch($par1.ToUpper()){ 
06.
    "JAN"{ $filter = "*.01.*"} 
07.
    "FEB"{ $filter = "*.02.*"} 
08.
    # usw. ... 
09.
    # im Falle das kein passender Wert angegeben wurde setze einen Default-Filter 
10.
    default {$filter = "*"} 
11.
12.
Get-ADUser -Filter "Description -like '$filter'" -properties * | ft Name, Description
Dein Script rufst du dann aus deiner CMD-Shell so auf:
powershell.exe -noexit C:\test.ps1 'JAN'
Grüße Uwe
Bitte warten ..
Mitglied: Otaris
22.01.2014 um 13:15 Uhr
Hallo Uwe,

Vielen Dank schonmal für deine Unterstützung.
Hab es mal probiert, aber so ganz klappt es noch nicht.
Wenn ich das Script auch direkt in PS aufrufe erhalte ich immernoch eine Fehlermeldung und eine Abfrage nach dem Parameter.


8dfe226ad8f22b04b9271e6ee0f0c396 - Klicke auf das Bild, um es zu vergrößern


Würdest du mich da nochmal unterstützen?
Bitte warten ..
Mitglied: colinardo
LÖSUNG 22.01.2014, aktualisiert um 13:28 Uhr
Zitat von Otaris:

Hallo Uwe,

Vielen Dank schonmal für deine Unterstützung.
Hab es mal probiert, aber so ganz klappt es noch nicht.
Wenn ich das Script auch direkt in PS aufrufe erhalte ich immernoch eine Fehlermeldung und eine Abfrage nach

Würdest du mich da nochmal unterstützen?
ahh sorry, habe den -Filter Parameter vergessen, habs oben korrigiert ....

Grüße Uwe
Bitte warten ..
Mitglied: Otaris
22.01.2014 um 13:28 Uhr
Jetzt klappt es. Super! Vielen Dank!
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
VB for Applications
Powershell Script aus VBA heraus ausführen (2)

Frage von mcnico1978 zum Thema VB for Applications ...

Batch & Shell
gelöst Powershell-Script als Admin über CMD ausführen (2)

Frage von Tobiased zum Thema Batch & Shell ...

Batch & Shell
Windows Explorer hängt sich bei Powershell Script auf (5)

Frage von zamsi7 zum Thema Batch & Shell ...

Batch & Shell
gelöst PowerShell Script für Dateisuche (4)

Frage von Stefan007 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (14)

Frage von SarekHL zum Thema DSL, VDSL ...