mcitp_marek 0 Geschrieben 28. Mai 2014 Melden Teilen Geschrieben 28. Mai 2014 Hallo zusammen, ich habe ca 100 Rechner wo eine Textdatei herauskopiert werden soll. Wie lautet hierfür der Code in Powershell? Also ich habe eine Textdatei mit 100 Computernamen: Computer1,Computer2... Er soll in jeden Computer die Textdatei herauskopieren und in einen zentralen Speicherort z:\ kopieren. Dabei soll er die Datei umbenennen. Z.B. Dateiname-Computer1 etc. Könnt ihr mir hier kurz weiterhelfen. Ich arbeite seit ca. 3 Monaten mit der Powershell und bin etwas überfordert. Danke Marek Zitieren Link zu diesem Kommentar
Knorkator 12 Geschrieben 28. Mai 2014 Melden Teilen Geschrieben 28. Mai 2014 (bearbeitet) Entweder Du löst das über eine Remote-Powershell Session oder über ein PS Startscript, welches per Gruppenrichtlinie gestartet wird. Die Rechner kopieren die Datei dann auf eine Netzwerkfreigabe. Wenn das ganze einmalig ist, würde ich das über eine Gruppenrichtlinie lösen. $Netzwerkfreigabe=\\Server\freigabe $Rechnername=$ENV:Computername $LokalerPfadzurDatei = "C:\Dateiname.txt $LokaleDatei="Dateiename.txt $Remotedatei= $Netzwerkfreigabe\$Rechnername-Dateiname.txt copy-item $LokalerPfadZurDatei $RemoteDatei So geht's auch: $Rechnerliste="rechner.txt" Foreach ($Rechner in (get-Content $Rechnerliste) { copy-item \\$Rechner\D$\Dateiname.txt \\Server\Freigabe\$Rechnername-Dateiname.txt} bearbeitet 28. Mai 2014 von Knorkator Zitieren Link zu diesem Kommentar
mcitp_marek 0 Geschrieben 30. Mai 2014 Autor Melden Teilen Geschrieben 30. Mai 2014 $Netzwerkfreigabe = "\\Server\Freigabe" $Rechnername=$ENV:Computername $LokalerPfadzurDatei = "C:\Programme\Dateiname.txt" $LokaleDatei="Dateiname.txt" $Remotedatei= "$Netzwerkfreigabe\$Rechnername" copy-item $LokalerPfadZurDatei $RemoteDatei-Dateiname.txt Hallo, über die Powershell hat es mit einem leicht geänderten Code funktioniert. Vielen Dank dafür erstmal. Jedoch funktioniert es nur wenn in der OU der Rechner neustartet. Wie kriege ich dieses Script im laufenden Betrieb durchgeführt? Ich möchte GPupdate nicht auf allen Servern manuell ausführen müssen. Es gibt bestimmt einen Befehl dafür oder? Grüße Marek Zitieren Link zu diesem Kommentar
Sunny61 806 Geschrieben 30. Mai 2014 Melden Teilen Geschrieben 30. Mai 2014 Du kannst einen geplanten Task per GPP erstellen und verteilen. Diesen führen die Clients/Server dann zum definierten Zeitpunkt aus. Dann braucht es auch kein gpupdate oder einen Neustart. Alternativ das was dir Knorkator bereits in http://www.mcseboard.de/topic/198367-%C3%BCber-die-powershell-datei-kopieren/?do=findComment&comment=1232571 vorgeschlagen hat. Zitieren Link zu diesem Kommentar
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.