Ich habe versucht, eine Datei mit SCP vom Remote-Server zu kopieren, aber es wird der folgende Fehler ausgegeben.
bash-3.2$ scp username@server:main.php C:\main.php
ssh: Hostname C: Hostname oder bereitgestellter Servname konnten nicht aufgelöst werden oder waren nicht bekannt
Es wird C: als Hostname angenommen, aber es ist nur der Laufwerksname. Bitte lassen Sie mich explizit angeben, wie ein Escapezeichen, um dieses Problem zu beseitigen.
Wenn ich nicht den Pfad spezifiziere, in dem auf dem lokalen Desktop gespeichert werden soll, funktioniert es einwandfrei.
bash-3.2$ scp username@server:main.php main.php
main.php 100% 29KB 28.9KB/s 00:01
Schätzen Sie jede Hilfe. Vielen Dank im Voraus,
PS: Verwenden von Windows XP SP2
/cygdrive/c
standardmäßig, aber viele Cygwin-Benutzer werdenmount --change-cygdrive-prefix /
so ausgeführt, dass es/c
stattdessen (/d
usw.) ist, da es viel einfacher zu tippen ist;)Verwenden Sie PSCP.exe
Das Problem, das Sie haben, ist, dass Sie von der Shell aus auf Ihr Windows XP-Laufwerk verweisen, was Sie nicht tun können. Sie sind remote an einem Computer angemeldet. Wenn auf Ihrer Windows XP-Box kein SSH-Server ausgeführt wird, können Sie dies nicht tun. In diesem Fall würden Sie Anmelde- und PW-Informationen für den Zielspeicherort verwenden.
Mit pscp.exe (kostenlos) können Sie tun, was Sie wollen.
quelle
@grawity ist richtig. In Zukunft können Sie auch laufen
um herauszufinden, in welchem Verzeichnis Sie sich befinden, damit Sie den richtigen Pfad zu dem gewünschten Verzeichnis gemäß cygwin herausfinden können.
quelle
Ich hatte das ähnliche Problem und hatte Erfolg mit:
scp Benutzername @ Server: main.php /c/main.php
was nur irgendwie von den anderen erwähnt wird.
quelle
Verwandte: Ich musste lokale Variablen im Pfad verwenden und fand die Verwendung
cygpath
sehr hilfreich.z.B
werden:
ironischerweise nur:
echo $MY_FILE
allein gab einen Cygwin-Pfad an, wurde aber im Befehl scp verwendet, war es irgendwie nicht und spuckte denselben Fehler aus, ssh: Hostname C: Hostname oder bereitgestellter Servname konnte nicht aufgelöst werden oder war nicht bekanntquelle