WinSCP, ein unverzichtbares Werkzeug für sichere Dateiübertragungen, bietet mehr als nur eine grafische Benutzeroberfläche. Die Funktionalität der WinSCP-Befehlszeile ermöglicht es IT-Profis und Systemadministratoren, Dateiübertragungen direkt von der Konsole aus zu verwalten und zu automatisieren, um Effizienz und Flexibilität in ihrem Arbeitsablauf zu verbessern.
Um die WinSCP-GUI im Detail kennenzulernen, werfen Sie einen Blick auf den ergänzenden Beitrag zu diesem Artikel: Die WinSCP-GUI: Der ultimative Leitfaden.
Entdecken Sie in diesem ultimativen Leitfaden alle Funktionen der WinSCP-Befehlszeile. Sie lernen Schritt für Schritt, wie Sie die WinSCP-Befehlszeile nutzen können, um Ihre Produktivität zu maximieren und Ihre Dateiübertragungsprozesse zu optimieren.
Tauchen wir ein in die Welt der Dateiverwaltung mit der Befehlszeile von WinSCP!
Voraussetzungen für die Verwendung der WinSCP-Befehlszeile
- A Windows XP+ PC – This tutorial will use Windows 10 Enterprise.
- A remote Linux host – This tutorial will use an Ubuntu 18.04.5 LTS machine.
- A user account on the remote SSH host with sudo permissions.
Generieren einer Sitzungs-URL mit der WinSCP-Befehlszeile
Während die WinSCP-GUI ein praktisches Login-Fenster zur Einrichtung von Verbindungen bietet, erfordert die WinSCP-Befehlszeile einen anderen Ansatz. Anstatt interaktiver Fenster müssen Sie die Verbindungsattribute auf direktere Weise angeben.

Um der WinSCP-Befehlszeile mitzuteilen, wo eine Verbindung hergestellt werden soll, wird eine Sitzungs-URL verwendet. Diese URL enthält die in der GUI definierten Verbindungsattribute.
A basic session URL follows this structure:
Zum Beispiel lautet die Sitzungs-URL, um sich über SFTP mit dem Host 1.1.1.1
mit dem Benutzernamen adam
und dem Passwort pw
in WinSCP zu verbinden:
Wenn Sie eine WinSCP-Site eingerichtet haben, können Sie die Sitzungs-URL leicht finden. Öffnen Sie die WinSCP-GUI, klicken Sie auf Sitzung, klicken Sie mit der rechten Maustaste auf Ihre Site und wählen Sie Sitzungs-URL/Code generieren.

Das Dialogfeld „Sitzungs-URL“ bietet verschiedene Anpassungsoptionen für Ihre Verbindung, die jeweils beeinflussen, wie WinSCP mit dem Remote-Host interagiert.
- Ausgangsverzeichnis – Legt das Remote-Verzeichnis fest, das WinSCP beim Verbinden öffnet.
- SSH-Hostschlüssel – Verwendet einen vorhandenen SSH-Schlüssel zur Authentifizierung des Remote-Hosts.
- WinSCP-spezifische URL – Generiert eine eindeutige Sitzungs-URL, z.B.
WinSCP-sftp://
, speziell für das Verständnis von WinSCP, um Konflikte mit Standard-Webbrowsern zu vermeiden. - Erweiterung speichern – Oft in Verbindung mit WinSCP-spezifischen URLs verwendet, um Anwendungs-Konflikte weiter zu minimieren.
Wenn alle Optionen aktiviert sind, sollte das Format der Sitzungs-URL wie folgt aussehen:

Beherrschung der WinSCP-Befehlszeile: Generierung des Verbindungscodes für Sitzungen
Mit Ihrer Sitzungs-URL bereit geht WinSCP einen Schritt weiter, indem es Codebeispiele im Fenster Sitzungs-URL/Code generieren im Skript-Tab bietet. Hier können Sie aus verschiedenen Skripttypen auswählen:
- Skriptdatei
- Batch-Datei
- Befehlszeile
- PowerShell-Skript
Wählen Sie Ihren bevorzugten Skripttyp aus, und WinSCP generiert die erforderliche Syntax zum Verbinden mit einem Remote-Host über die WinSCP-Befehlszeile.

Zum Codieren in .NET, C# oder PowerShell wechseln Sie zum Tab „.NET-Assembly-Code“, wie unten dargestellt.

Verständnis von WinSCP.exe vs. WinSCP.com im Kontext der WinSCP-Befehlszeile
Das Wissen darüber, wie man eine Sitzungs-URL generiert, ist entscheidend für die Verwendung von WinSCP-Befehlszeilen-Tools. Lassen Sie uns erkunden, wie man mit diesen Tools eine Verbindung zu einem Host herstellt, beginnend mit dem Verständnis der Unterschiede zwischen winscp.exe und winscp.com.
Winscp.exe fungiert sowohl als GUI-Startprogramm als auch als Befehlszeilen-Dienstprogramm für einfache Aufgaben. Sie können es für grundlegende Befehle verwenden, wenn Sie die richtigen Parameter angeben.
Denken Sie an winscp.exe als Brücke zwischen den GUI-Funktionen und der Befehlszeilenschnittstelle von WinSCP.
Für komplexere Aufgaben, insbesondere beim Skripting, ist winscp.com Ihre erste Wahl. Dieses konsolenbasierte Tool eignet sich ideal für Automatisierungsskripte und unterstützt eine Reihe von SSH-Funktionen. Es bietet eine echte, nicht-interaktive WinSCP-Befehlszeilen-Erfahrung.
Unabhängig von Ihrer Wahl beginnen Sie mit dem Öffnen eines Eingabeaufforderungsfensters (entweder cmd.exe oder PowerShell) und navigieren zum Installationsverzeichnis von WinSCP.
Mit der Eingabeaufforderung bereit, gehen wir nun zur Verwendung von WinSCP für Remote-Verbindungen über.
Verwendung von WinSCP.exe: Verbindung zu Remote-Hosts mit Sitzungs-URLs
Eine der einfachsten Methoden, um eine Verbindung zu einem Remote-Host mit der WinSCP-Befehlszeile herzustellen, besteht darin, winscp.exe mit der Sitzungs-URL als Parameter auszuführen. Um beispielsweise eine Verbindung zum Host 54.179.19.216
mit Benutzername automate
und Passwort automate
unter Verwendung von sftp
herzustellen und anschließend zum Verzeichnis /tmp zu navigieren, verwenden Sie den folgenden Befehl:
Zur Verbesserung der Sicherheit können Sie anstelle eines Passworts eine Verbindung zu einem Remote-Host unter Verwendung eines privaten Schlüssels mit dem Parameter /privatekey
herstellen. Obwohl diese Methode sicherer ist, fallen die Feinheiten der Einrichtung eines privaten Schlüssels nicht in den Rahmen dieses Tutorials zur WinSCP-Befehlszeile.
Hier ist ein Beispiel für die Verbindung zum Host 54.179.19.216
unter Verwendung des Benutzernamens automate
und eines privaten Schlüssels mykey.ppk
über scp
.
Effizientes Herunterladen von Dateien mit WinSCP.exe ohne eine Site
Die WinSCP-Befehlszeile über winscp.exe ermöglicht es Ihnen, Dateien schnell über Ad-hoc-Verbindungen zu übertragen, selbst ohne eine vordefinierte WinSCP-Site. Lassen Sie uns das Herunterladen von Dateien von einem Remote-Host ohne Site-Konfiguration erkunden. Zum Beispiel das Herunterladen aller Dateien im Verzeichnis /tmp des Remote-Hosts 54.179.19.216 unter Verwendung von SFTP.
1. Starten Sie, indem Sie eine Sitzungs-URL generieren. Hier ist ein Beispiel, wie Sie sich mit den Anmeldeinformationen automate
mit dem entfernten Host verbinden und im Verzeichnis /tmp landen.
2. Führen Sie winscp.exe mit der Sitzungs-URL aus, um auf das Dialogfeld für die WinSCP-Übertragungseinstellungen zuzugreifen. Das lokale Verzeichnis ist standardmäßig auf ~\Dokumente festgelegt, und WinSCP wird alle Dateien (\\*.*
) im Remote-Verzeichnis anvisieren.
3. Klicken Sie auf OK, um die Übertragung zu starten. WinSCP lädt alle Dateien aus dem entfernten /tmp Verzeichnis in das von Ihnen gewählte lokale Verzeichnis über SFTP herunter.

Hochladen von Dateien mit WinSCP.exe ohne eine Site
Nachdem Sie das Herunterladen von Dateien gemeistert haben, wechseln Sie zum Hochladen von Dateien auf einen Remote-Host mit der WinSCP-Befehlszeile und winscp.exe. Der Prozess ist ähnlich wie beim Herunterladen, aber dieses Mal müssen Sie auch den /upload
-Schalter verwenden und die Datei oder den Ordner angeben, den Sie hochladen möchten.
Durch Ausführen des oben genannten Befehls wird der WinSCP-Upload-Dialog angezeigt, der die zu ladenden Dateien (*.*
) im Verzeichnis /tmp des Remote-Hosts angibt.

Nach dem Hochladen melden Sie sich über einen SSH-Client beim Remote-Host an und überprüfen Sie den Erfolg des Uploads mit Befehlen wie pwd
und ls -lh
, die den Verzeichnisinhalt anzeigen und den erfolgreichen Transfer bestätigen.

WinSCP.exe nutzen, um Dateien über eine Website herunterzuladen
Während Session-URLs praktisch für Ad-hoc-Verbindungen sind, vereinfacht eine vorab konfigurierte WinSCP-Site den Prozess. Wenn Sie WinSCP bereits einige Zeit verwenden, haben Sie wahrscheinlich bereits mehrere Sites eingerichtet.
Mit winscp.exe können Sie diese in der GUI erstellten Sites einfach nutzen, um sich mit einem Remote-Host zu verbinden, ohne sich an Session-URL-Details erinnern zu müssen.
Um gespeicherte Sites in WinSCP zu finden, navigieren Sie zu Sitzung -> Sites -> Site-Manager.
Zum Beispiel erkunden wir das Herunterladen von Dateien mithilfe einer vorhandenen Site mit der WinSCP-Befehlszeile.
1. Verbinden Sie sich mit dem Remote-Host über eine konfigurierte WinSCP-Site. Das folgende Beispiel zeigt eine Verbindung über eine Site namens Adamsite
.
Nach erfolgreicher Verbindung zeigt WinSCP eine Statusbenachrichtigung an.

2. Führen Sie anschließend winscp.exe mit dem Protokoll (sftp
), dem Sitenamen (Adamsite
) und dem Zielverzeichnis (/tmp
) aus. Diese Vorgehensweise öffnet das WinSCP-Übertragungseinstellungen-Dialogfeld, bereit für Datei-Download-Aktionen.
Klicken Sie auf OK, um mit dem Herunterladen aller Dateien aus dem /tmp-Verzeichnis des Remote-Hosts in Ihr lokales Verzeichnis über SFTP zu beginnen.

Das Hochladen von Dateien von Ihrem lokalen Rechner auf einen Remote-Host erfolgt analog. Verwenden Sie den
/upload
-Schalter zusammen mit dem Datei- oder Verzeichnispfad, wie z.B.winscp.exe Site3 /upload .\license.txt
. Eine vollständige URL-Spezifikation (sftp://Adamsite/tmp
) ist nicht erforderlich.
Optimierung der Remote-Dateibearbeitung mit WinSCP.exe
Müssen Sie eine Textdatei auf einem Remote-Host bearbeiten? Überspringen Sie den manuellen Download-Bearbeitungs-Upload-Zyklus. Die WinSCP-Befehlszeile bietet eine effizientere Methode mit dem /edit
-Parameter. Geben Sie einfach den Sitename, /edit
und den Pfad zur Remote-Datei an.
Beispiel:
Die Ausführung des obigen Befehls startet Ihren Standardtexteditor, der es Ihnen ermöglicht, die Remote-Datei nach Bedarf zu ändern. Diese nahtlose Integration ist ein wichtiges Merkmal der WinSCP-Befehlszeilen-Fähigkeiten.

Nach der Bearbeitung speichern Sie einfach die Datei. WinSCP kümmert sich um die Aktualisierung der Datei auf dem Remote-Host und optimiert somit den Bearbeitungs-Upload-Prozess.
Workflow-Optimierung mit WinSCP.exe Sitzungsprotokollierung
Für eine umfassende Aufzeichnung Ihrer Aktionen bietet die WinSCP-Befehlszeile eine Sitzungsprotokollierung. Diese Funktion ist unverzichtbar, um die während einer Sitzung ausgeführten Befehle zu verfolgen und bei der Fehlerbehebung und Aufzeichnung zu helfen.
Um die Sitzungsprotokollierung zu aktivieren, fügen Sie beim Verbinden mit einer Sitzung bis zu drei Parameter hinzu:
/log
– Gibt den Pfad für die Protokolldatei an./loglevel
– Legt die Verbose-Stufe der Protokolle fest, von Reduced (1
) bis Debug (2
)./logsize
– Definiert die Größe und Rotation der Protokolldatei im Format<gesamt archivierte Protokolle>*<maximale Protokolldateigröße>
.
Nachfolgend finden Sie ein Beispiel für winscp.exe, das eine Verbindung zu einem Host herstellt und die Aktivitäten auf C:\winscp.log
mit einem Debug-Level protokolliert. Der Befehl behält bis zu fünf Protokolldateien von jeweils 10 MB bei (5*10MB
).
Erkunden Sie erweiterte Funktionen mit WinSCP.com-Interaktionsbefehlen
Während winscp.exe eine gute Einführung in Remote-Verbindungen bietet, bietet winscp.com ein noch tiefergehendes und interaktives Befehlszeilen-Erlebnis.
Beginnen Sie damit, winscp.com in einer Befehlszeilenumgebung zu öffnen. Sie gelangen in eine interaktive Sitzung, die an SSH erinnert, wie durch die Eingabeaufforderung winscp>
angezeigt.
Verbinden Sie sich mit einem Remote-Computer mithilfe des Befehls open
, gefolgt vom gewünschten Standortnamen.
Nachdem Sie sich über die WinSCP Befehlszeile mit Adamsite
mit dem Remote-Host verbunden haben, finden Sie sich in einer Umgebung ähnlich einer SSH-Sitzung wieder. Hier können Sie Befehle ausführen und effizient mit dem Remote-Host interagieren.

Verbesserung der Sicherheit: Verbindung mit einem neuen Schlüsselpaar (Host Key) in WinSCP
Die öffentliche Schlüsselauthentifizierung erhöht die Sicherheit beim Herstellen von Verbindungen zu Sitzungen. Verwenden Sie dazu zunächst den Host-Schlüssel-Fingerabdruck für Ihre Sitzung. Verwenden Sie den Befehl ssh-keygen
im WinSCP-Ordner gemäß der folgenden Syntax.
Dieser Befehl generiert ein SSH-Schlüsselpaar, das für eine sichere Authentifizierung erforderlich ist. Sobald er ausgeführt wird, erhalten Sie einen Fingerabdruck, der für winscp.com Sitzungsverbindungen erforderlich ist.

Um mit dem hostkey
-Parameter eine Verbindung herzustellen, geben Sie den generierten Fingerabdruck wie im folgenden Beispiel gezeigt an.
Fügen Sie beim Verwenden des Fingerabdrucks von
ssh-keygen
das Präfixssh-rsa 2048
hinzu.
Effizienzsteigerung mit WinSCP.com: Verwendung des Parameters /command
Während interaktive Sitzungen für bestimmte Aufgaben großartig sind, ist die nicht-interaktive Befehlsausführung entscheidend für Skripting und Automatisierung. winscp.com unterstützt dies durch den /command
-Parameter, der es Ihnen ermöglicht, eine Sitzung aufzubauen, einen Befehl auszuführen und sich in einem einzigen Schritt zu trennen.
Zum Beispiel verwenden Sie den /command
-Parameter, um eine lokale Datei auf einen Remote-Host zu übertragen. Das folgende Beispiel zeigt das Kopieren einer Datei von C:\abc\abc.txt in das Verzeichnis /tmp auf dem Remote-Host 13.213.61.127
.
Der /command
-Parameter nimmt zwei Argumente als Zeichenfolgen: eines zum Aufbauen der Sitzung und ein weiteres für die eigentliche Befehlsausführung.
Aufgaben automatisieren mit WinSCP.com: Der /script
-Parameter
Für komplexere Automatisierungsanforderungen ermöglicht der /script
-Parameter in winscp.com die Ausführung einer Reihe von Befehlen aus einem Skript. Diese Funktion ist unschätzbar bei der Verwaltung wiederholter Aufgaben oder komplexer Operationen auf Remote-Hosts.
Um den /script
-Parameter in der WinSCP-Befehlszeile zu nutzen, beginnen Sie damit, eine Skriptdatei mit Ihrem bevorzugten Texteditor auf Ihrem Desktop mit dem Namen upload_file_script.txt zu erstellen.
Erstellen Sie eine leere Textdatei mit dem Namen a.txt im Verzeichnis /tmp Ihres Remote-Computers.
Erstellen Sie ein lokales Verzeichnis unter C:\abc.
Nächste, gib den folgenden Inhalt in die Datei upload_file_script.txt ein und speichere sie. Dieses Skript lädt die Datei a.txt aus dem entfernten Verzeichnis /tmp herunter und lädt sie als new_file.txt erneut hoch.
Führe dieses Skript mit dem /script
-Parameter in WinSCP mit folgendem Befehl aus:
Verwende den
/ini=nul
-Schalter, um zu verhindern, dass WinSCP beim Beenden irgendwelche Sitzungskonfigurationen speichert.
Verwendung von WinSCP.com für die Schlüsselkonvertierung
WinSCP unterstützt passwort- und zertifikat-basierte oder öffentliche Schlüsselauthentifizierung. Um die öffentliche Schlüsselauthentifizierung zu verwenden, ist ein kompatibles privates Schlüsselformat erforderlich. WinSCP hilft beim Konvertieren von Schlüsselformaten für die Kompatibilität.
Zum Beispiel konvertiere einen privaten Schlüssel im PEM-Format (wie die von AWS EC2) in ein von Putty unterstütztes Format mit WinSCP-Befehlszeile. Der /keygen
-Parameter in winscp.com erleichtert diese Konvertierung.
- Wenden Sie den Parameter
/keygen
an, gefolgt vom aktuellen Pfad des Schlüssels. - Verwenden Sie den Parameter
-o
, um den Ausgabedateipfad des konvertierten Schlüssels anzugeben. - Optional können Sie den Parameter
-c
verwenden, um dem konvertierten Schlüssel einen Kommentar hinzuzufügen.
Fazit
Mit diesem umfassenden Leitfaden zur WinSCP-Befehlszeile zusammen mit dem WinSCP GUI-Leitfaden sind Sie jetzt in der Lage, die Fähigkeiten von WinSCP voll auszuschöpfen. Ob es um Dateiübertragungen, Befehlsausführungen, Skriptausführungen oder Schlüsselkonvertierungen geht, WinSCP ist ein vielseitiges Werkzeug für jeden IT-Professional.
Wie planen Sie, WinSCP in Ihren Arbeitsablauf zu integrieren? Teilen Sie Ihre Gedanken und Erfahrungen!