Ich versuche, ein Synchronisationsskript in PowerShell zu erstellen, so dass meine Anwendungen in MDT regelmäßig in unserem Haupt kopiert werden Dateiserver basierend auf dem Ordnernamen (in MDT befinden sich Anwendungen in einem Ordner, in dem auf unserem Hauptserver Anwendungen aufgeteilt sind, abhängig von der Abteilung, in der sie verwendet werden).Wie Powershell-Array für bestimmte Zeichenfolgen zu durchsuchen und dieses Ergebnis in einem Kopie-Element -include-Skript verwenden
Von dem, was ich im Web gelesen habe, wäre der beste Weg, ein Array mit "Get-ChildItem" zu füllen, was ich irgendwie dachte, wie zu tun (siehe Code unten).
Nachdem das Array jedoch gefüllt ist, weiß ich nicht, wie dieses Array nach bestimmten Ergebnissen durchsucht wird, noch weiß ich, wie diese Ergebnisse mit copy-item verwendet werden.
Kurz gesagt, was ich tun muss: Erstellen Sie ein Array mit "Get-ChildItem", fragen Sie das resultierende Array nach bestimmten Ordnern und lassen Sie diese Ordner an bestimmte Ziele kopieren.
Hier ist der Code, den ich habe bisher:
$arr = Get-ChildItem \\slmtl-wds02.domain.inc\deploymentshare$\applications |
Where-Object {$_.PSIsContainer} |
Foreach-Object {$_.Name}
$sourcepath = \\slmtl-wds02.domain.inc\deploymentshare$\applications
$destSLARC = \\slmtl-fs01.domain.inc\folder\it_services\private\software\service_desk\pc\SLARCMTL
$destSLMTL = \\slmtl-fs01.domain.inc\folder\it_services\private\software\service_desk\pc\SLMTL
$destSLGLB = \\slmtl-fs01.domain.inc\folder\it_services\private\software\service_desk\pc\SLGLB
$destSLTECH = \\slmtl-fs01.domain.inc\folder\it_services\private\software\service_desk\pc\SLTECH
Vielen Dank im Voraus für Ihre Hilfe :)
JA! Das funktioniert perfekt. Wenn mir mein Gedächtnis gut tut, wenn ich will, dass es überschreibt, was da ist, muss ich einfach - Force nach dem -Recurse hinzufügen, oder? –
Ja, wenn Sie -force hinzufügen, überschreibt es alle Dateien, die bereits im Ziel vorhanden sind, anstatt Ausnahmen auszulösen. Es werden jedoch keine vorhandenen Dateien vom Ziel gelöscht, die nicht mehr an der Quelle vorhanden sind. Wenn Sie dies also möchten, möchten Sie das Ziel möglicherweise zuerst löschen. – pabrams
Nein, meistens dient dieses Skript dazu, einfach das zu kopieren, was ich auf unserem MDT-Server auf unseren Haupt-Datei-Server aktualisiere, wo jeder Techniker aus allen Büros Zugriff hat. So ist das Pflegen der alten Sachen kein wirkliches Problem. Vielen Dank für die Antwort :) –