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

Powershell Script in Script ausführen

Frage Microsoft Windows Server

Mitglied: diematrix125

diematrix125 (Level 1) - Jetzt verbinden

30.04.2014, aktualisiert 16:37 Uhr, 7786 Aufrufe, 2 Kommentare

Hallo!

Ich habe hier momentan zwei verschiedene Skripte:

1. Skript zum Erstellen von Usern
2. Skript zum Erstellen der Mailbox

Beide Skripte laufen für sich alleine ohne Probleme. Allerdings möchte ich folgendes machen:

Wenn der Useraccount schon erstellt ist, möchte ich nur das zweite Skript ausführen. => Funktioniert ohne Probleme.


Wenn der Useraccount noch nicht erstellt ist, möchte ich das erste Skript ausführen, durchlaufen lassen und ein paar
Daten (Vorname, Nachname etc) in Variablen speichern. Anschließend soll automatisch das zweite Skript laufen und mit
den Variablen die zuvor gespeichert wurden die Mailbox erstellen.


Hat jemand eine Idee wie ich das ganze realisieren kann? Vielleicht mit Hilfe eines weiteren Skripts in dem das erste Skript
läuft, die Variablen speichertund dann an das zweite übergibt?



Vielleicht kann mir jemand einen Tipp geben.



Danke!
Mitglied: certifiedit.net
30.04.2014 um 16:44 Uhr
Hallo,

frei:

& "(skript)" $var imho

Grüße
Bitte warten ..
Mitglied: colinardo
30.04.2014, aktualisiert um 21:05 Uhr
Hi,
ich würde das beides zusammen in eine "Function" packen, z.B. nach dem Schema:
01.
function New-UserWithMailbox { 
02.
    param( 
03.
        [parameter(mandatory=$true)][ValidateNotNullOrEmpty()][string]$SamAccountName, 
04.
        [parameter(mandatory=$true)][ValidateNotNullOrEmpty()][string]$UPN, 
05.
        [parameter(mandatory=$true)][ValidateNotNullOrEmpty()][string]$Alias 
06.
07.
     
08.
    $user = Get-AdUser $SamAccountName -ErrorAction SilentlyContinue 
09.
 
10.
    if ($user){ 
11.
        # User vorhanden / Nur Mailbox für User erzeugen 
12.
        New-Mailbox ............... 
13.
    }else{ 
14.
        # User nicht vorhanden / AD-User und Mailbox erstellen 
15.
        new-aduser ................ 
16.
        new-mailbox ................. 
17.
18.
}
dann kannst du das ganze als CMDLet mit deinen Parametern so aufrufen:
New-UserWithMailbox -SamAccountName maxmuster -UPN max.muster@domain.com -Alias MaxMuster
ansonsten wenn du es so belassen willst, rufst du ein anderes Script so mit Parametern auf:
&"d:\deinAnderesScript.ps1" "Parameter1" "Parameter2"
Zur Info falls das noch nicht bekannt ist: Parameter kannst du in deinen Scripts hinzufügen indem du diese ganz am Anfang des Scriptes definierst:
param( 
  $parameter1, 
  $parameter2, 
  $parameter3 
)
Siehe dazu: http://technet.microsoft.com/de-de/magazine/jj554301.aspx

Dann gibt es noch eine weitere Methode, das sogenannte DOT-Sourcing mit dem man ein Script in das andere lädt und dabei die aktuellen Variablen erhält:
. "D:\deinZweitesScript.ps1"
(man beachte den alleinstehenden Punkt am Anfang der Zeile).

Alle diese Methoden kannst du hier detailiert nachlesen: http://www.thomas-franke.net/including-scripts-functions-modules/


Grüße Uwe
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Powershell-Script als Admin über CMD ausführen (2)

Frage von Tobiased zum Thema Batch & Shell ...

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

Frage von mcnico1978 zum Thema VB for Applications ...

Microsoft
PowerShell Script auf Domänen-Rechnern ausführen (3)

Frage von Hoerli zum Thema Microsoft ...

Windows Server
gelöst Aufgabenplanung soll Powershell-Script ausführen (6)

Frage von it-fraggle zum Thema Windows Server ...

Neue Wissensbeiträge
Ubuntu

Ubuntu 17.10 steht zum Download bereit

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(6)

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(2)

Information von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
Router & Routing
Allnet - VDSL2 Modem - SFP (mini-GBIC) (20)

Frage von Dobby zum Thema Router & Routing ...

Voice over IP
DeutschlandLAN IP Voice Data M Premium, Erfahrung mit Faxgeräte? (17)

Frage von liquidbase zum Thema Voice over IP ...

Windows 10
Windows 10 Ordnerfreigabe (15)

Frage von Xaero1982 zum Thema Windows 10 ...

Monitoring
Netzwerk-Monitoring Software (15)

Frage von Ghost108 zum Thema Monitoring ...