PowerShell zum Kopieren von Dateien über das Netzwerk
-
Verwenden Sie das Cmdlet
Copy-Item
, um Dateien in die Netzwerkfreigabe in PowerShell zu kopieren -
Verwenden von
robocopy
zum Kopieren von Dateien über das Netzwerk in PowerShell
PowerShell ist ein leistungsstarkes Tool, mit dem Sie verschiedene Datei- und Ordnervorgänge über die Befehlszeilenschnittstelle ausführen können. Mit PowerShell können Sie Dateien und Ordner erstellen, umbenennen, kopieren, verschieben, löschen und anzeigen.
Das Kopieren von Dateien ist eine der wesentlichen Funktionen, die in PowerShell verfügbar sind. Mit PowerShell können Sie Dateien und Ordner ganz einfach von einem Speicherort an einen anderen kopieren.
Das Auswählen und manuelle Kopieren von Dateien kann zeitaufwändig sein, wenn viele Dateien kopiert werden müssen. Stattdessen können Sie das PowerShell-Skript ausführen und warten, bis der Kopiervorgang abgeschlossen ist.
In diesem Tutorial lernen Sie, wie Sie lokale Dateien mithilfe von PowerShell auf eine Netzwerkfreigabe kopieren.
Verwenden Sie das Cmdlet Copy-Item
, um Dateien in die Netzwerkfreigabe in PowerShell zu kopieren
Das Copy-Item
ist ein beliebtes Cmdlet, das in PowerShell verwendet wird, um Dateien von einem Ort an einen anderen zu kopieren. Die kopierte Originaldatei wird nicht gelöscht.
Der folgende Befehl kopiert die Datei process.txt
in das Verzeichnis \\DelftStack\record
in der Netzwerkfreigabe.
Copy-Item C:\New\process.txt -Destination \\DelftStack\record
Mit dem folgenden Befehl können Sie überprüfen, ob die Datei kopiert wurde.
Get-Item \\DelftStack\record\process.txt
Ausgabe:
Directory: \\DelftStack\record
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 21-01-2022 17:47 70920 process.txt
Die process.txt
ist im Zielverzeichnis vorhanden, was bedeutet, dass sie erfolgreich an den angegebenen Ort kopiert wurde.
Das Copy-Item
erlaubt Ihnen auch, den Dateinamen während des Kopierens umzubenennen. Um die Datei umzubenennen, müssen Sie dem Parameter -Destination
einen neuen Namen geben.
Dieser Befehl kopiert beispielsweise die Datei process.txt
und benennt sie im Zielverzeichnis in newprocess.txt
um.
Copy-Item C:\New\process.txt -Destination \\DelftStack\record\newprocess.txt
Bestätigen Sie nun die Datei, indem Sie das Zielverzeichnis einchecken.
Get-Item \\DelftStack\record\newprocess.txt
Ausgabe:
Directory: \\DelftStack\record
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 21-01-2022 17:47 70920 newprocess.txt
Verwenden von robocopy
zum Kopieren von Dateien über das Netzwerk in PowerShell
robocopy
ist ein leistungsstarkes Befehlszeilentool zum Kopieren von Dateidaten von einem Ort an einen anderen in Windows. Die Syntax für die Verwendung des Robocopy-Befehls lautet wie folgt.
robocopy <source> <destination> [<file>] [<options>]
Der folgende Befehl kopiert eine output.csv
-Datei aus dem Verzeichnis C:\New
in eine Dateifreigabe \\DelftStack\record
.
robocopy C:\New\\DelftStack\record output.csv
Ausgabe:
Der Befehl robocopy
zeigt den Auftragskopf und die Zusammenfassung der Ausgabe an. Sie können die Option /njh
verwenden, um den Job-Header auszublenden, und die Option /njs
, um die Job-Zusammenfassung auszublenden.
Das folgende Beispiel kopiert eine car.png
-Datei aus dem Verzeichnis C:\pc
auf eine Netzwerkfreigabe //DelftStack/record
und blendet sowohl den Job-Header als auch die Zusammenfassung in der Ausgabe aus.
robocopy C:\pc\\DelftStack\record car.png /njh /njs
Ausgabe:
1 C:\pc\
Überprüfen Sie als Nächstes, ob die Datei an das angegebene Ziel kopiert wird.
Get-Item \\DelftStack\record\car.png
Ausgabe:
Directory: \\DelftStack\record
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 03-01-2022 14:26 3465 car.png
Beide Befehle sind einfach zu verwenden und bieten die Funktionalität, Dateien vom lokalen Server auf eine Netzwerkfreigabe zu kopieren. Jetzt sollten Sie wissen, wie Sie mit PowerShell Dateien über eine Netzwerkfreigabe kopieren.