DrHigh 10 Geschrieben 27. Januar 2017 Melden Geschrieben 27. Januar 2017 (bearbeitet) Hallo zusammen, versuche gerade eine Batch oder ein script zu schreiben, wo ich werte aus eine csv Datei hoeln möcht und diese dann als Variable im Befehl verwenden möchte. Hintergrund: Möchte gerne Exchange Postfächer in PST Dateien exportieren. In der CSV Datei gibt es nur eine Spalte mit den entsprechenden Namen. Nun mein Vorhaben: Script soll aus der csv Datei Spalte 1 Zeile 1 den ersten Namen auslesen und deiner Variablen ("UserName") zuweisen. Im Anschluss soll dann der nachfolgende Befehl ausgeführt werden. New-MailboxExportRequest -Mailbox UserName -FilePath \\Servername\e$\UserName_YYYY_MM_DD.pst Dies soll solange geschehen, bis die komplette csv Datei ausgelesen worden ist. Danke im Voraus. Schöne Grüße Sascha bearbeitet 27. Januar 2017 von DrHigh Zitieren
testperson 1.758 Geschrieben 27. Januar 2017 Melden Geschrieben 27. Januar 2017 Bleib doch in einem Thread: http://www.mcseboard.de/topic/209502-postf%C3%A4cher-in-pst-datei-sichern-per-script/ Zitieren
DrHigh 10 Geschrieben 27. Januar 2017 Autor Melden Geschrieben 27. Januar 2017 (bearbeitet) Bleib doch in einem Thread: http://www.mcseboard.de/topic/209502-postf%C3%A4cher-in-pst-datei-sichern-per-script/ Danke für den Hinweis, aber laut Boardregeln, gehört dieser Thread ja hier rein und nicht unter Exchange. Daher habe ich hier auch noch mal ein Thread geöffnet. Hast Du denn schon mal so ein Script geschrieben Board Veteran oder weiß Du wo ich sowas änliches bekommen kann? Danke im Voraus. bearbeitet 27. Januar 2017 von DrHigh Zitieren
MurdocX 965 Geschrieben 27. Januar 2017 Melden Geschrieben 27. Januar 2017 Du könntest dir den Befehl "Import-CSV" https://technet.microsoft.com/de-de/library/ee176874.aspx?f=255&MSPPError=-2147217396 genauer ansehen. Dann mit ForEach-Object oder einer ForEach - Schleife die Daten verarbeiten. Zitieren
testperson 1.758 Geschrieben 27. Januar 2017 Melden Geschrieben 27. Januar 2017 BTW. dürfte der Export auf e$ Probleme machen, da "Exchange Trusted Subsystem" AFAIK keine Berechtigungen darauf hat. Zitieren
NorbertFe 2.155 Geschrieben 27. Januar 2017 Melden Geschrieben 27. Januar 2017 Wenns der Exchange oder fsw ist schon ;) Zitieren
DrHigh 10 Geschrieben 30. Januar 2017 Autor Melden Geschrieben 30. Januar 2017 Du könntest dir den Befehl "Import-CSV" https://technet.microsoft.com/de-de/library/ee176874.aspx?f=255&MSPPError=-2147217396 genauer ansehen. Dann mit ForEach-Object oder einer ForEach - Schleife die Daten verarbeiten. Danke für den Tipp, aber ich weiss nicht ganz recht, wie ich den ForEach-Object Befehl verwenden muss. Kannst Du da eventuell ein Beispiel bringen? Danke im Voraus. Gruß Sascha Zitieren
MurdocX 965 Geschrieben 30. Januar 2017 Melden Geschrieben 30. Januar 2017 Über Google hättest du sicher was gutes gefunden ;) Schau mal hier, dort gibts einige schöne Beispiele: PowerShell ForEach und ForEach-Object http://www.admin-source.de/BlogDeu/905/powershell-foreach-und-foreach-object Zitieren
DrHigh 10 Geschrieben 1. Februar 2017 Autor Melden Geschrieben 1. Februar 2017 Eine kleine Lösung habe ich schon, $dataset =Import-Csv("C:\test.csv")foreach($row in $dataset){New-MailboxExportRequest-Mailbox $row.User -FilePath \\Servername\e$\$row.User _YYYY_MM_DD.pst} Aber jetzt wird mir der Dateiname mit diesen zusätzlichen Zeichen '@{User= }.User' versehen. Vielleicht hat ja jemand noch einen Tipp. Schöne Grüße Zitieren
Dukel 460 Geschrieben 1. Februar 2017 Melden Geschrieben 1. Februar 2017 $($row.User) beim Filepath. Zitieren
DrHigh 10 Geschrieben 1. Februar 2017 Autor Melden Geschrieben 1. Februar 2017 $($row.User) beim Filepath. Schade, hat nicht den gewollten Erfolg gebracht, die unnötigen Zeichen die auch nicht in der CSV vorhanden, werden wie von geisterhand munter weiter dargestellt und im Dateinamen verwendet. Zitieren
tesso 377 Geschrieben 1. Februar 2017 Melden Geschrieben 1. Februar 2017 Ein paar mehr Informationen darfst du schon bringen. Was steht in der csv und wie genau sieht der Dateiname nun aus? Schade, hat nicht den gewollten Erfolg gebracht, die unnötigen Zeichen die auch nicht in der CSV vorhanden, werden wie von geisterhand munter weiter dargestellt und im Dateinamen verwendet. Doch so funktioniert es $dataset =Import-Csv("C:\temp\test.csv") foreach($row in $dataset){Write-Host $row.User \\Servername\e$\$($row.User) _YYYY_MM_DD.pst} Das Leerzeichen im Namen irritiert mich allerdings etwas. Zitieren
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.