2016-05-02 8 views
0

Ich habe dieses große Powershell-Skript Ich schrieb eine Weile zurück, welche die Benutzer von einer Active Directory Group zu einer anderen kopieren. Ich muss die Ergebnisse jeder Bildschirmausgabe protokollieren, damit ich ein Protokoll habe, was das Skript tat, sollte es jemals ein Problem geben. Ich möchte die Ausgabe in C: \ Temp \ CopyLog.txt schreiben, aber ich kann nicht herausfinden, wie es richtig funktioniert. Ich habe Add-Content und Out-File ausprobiert, aber sie scheinen mich nicht zu mögen.Müssen meine Ergebnisse in einer separaten Datei protokollieren

Import-Module activedirectory 

$string = Get-Content C:\Temp\GroupsToCopy.txt 
foreach($i in $string) 
{ 
$split = $i.split(";") 
$Source_Group = $split[0] 
$Destination_Group = $split[1] 

"***Results before script***" 

"Current Member's of: $Source_Group" 
Get-ADGroupMember $Source_Group | select name | ft -hide 
"`n" 
"Current Member's of: $Destination_Group" 

$Source = Get-ADGroupMember $Source_Group | select name | ft -hide 

$DST = Get-ADGroupMember $Destination_Group 


if ($DST -eq $null) 
{ 
"Group has no members" 
} 
else 
{ 
Get-ADGroupMember $Destination_Group | select name | ft -hide 
} 

$Target = Get-ADGroupMember $Source_Group 
foreach ($Person in $Target) 
{ 
    Add-ADGroupMember $Destination_Group -Members $Person.distinguishedname 
} 

"`n" 
"***Results after script***" 
"`n" 

"Current Member's of: $Source_Group" 
Get-ADGroupMember $Source_Group | select name | ft -hide 
"`n" 
"Current Member's of: $Destination_Group" 
Get-ADGroupMember $Destination_Group | select name | ft -hide 
"`n" 
} 

Antwort

0

Verwendung Start-Transcript:

Start-Transcript -Path C:\Temp\CopyLog.txt -Append 
# Rest of script goes here 
Stop-Transcript 
Verwandte Themen