Próbowałem skopiować plik ze zdalnego serwera za pomocą SCP, ale pojawia się następujący błąd.
bash-3.2$ scp username@server:main.php C:\main.php
ssh: Nie można rozpoznać nazwy hosta C: podana nazwa hosta lub nazwa serwera jest nieznana
Przyjmuje C: jako nazwę hosta, ale jest to tylko nazwa napędu. Pozwól mi, jak wyraźnie określić, jak niektórzy uciekają, aby pozbyć się tego problemu.
Jeśli nie podam ścieżki do zapisania na lokalnym pulpicie, działa dobrze.
bash-3.2$ scp username@server:main.php main.php
main.php 100% 29KB 28.9KB/s 00:01
Doceń wszelką pomoc. Z góry dzięki,
PS: Korzystanie z systemu Windows XP SP2
/cygdrive/c
domyślnie, ale wielu użytkowników cygwin działa,mount --change-cygdrive-prefix /
więc/c
zamiast tego (/d
itd.), Ponieważ o wiele łatwiej jest pisać;)Użyj PSCP.exe
Problemem jest to, że odwołujesz się do napędu Windows XP z powłoki, której nie możesz zrobić. Jesteś zalogowany zdalnie na maszynie, więc jeśli twój Windows XP nie ma uruchomionego serwera ssh, w którym to przypadku użyjesz danych logowania i pw dla lokalizacji docelowej, nie możesz tego zrobić.
Za pomocą pscp.exe (za darmo) możesz robić, co chcesz.
źródło
@grawity ma rację. W przyszłości możesz także biegać
aby dowiedzieć się, w którym katalogu się znajdujesz, abyś mógł znaleźć właściwą ścieżkę do katalogu, który chcesz, zgodnie z cygwin.
źródło
Miałem podobny problem i odniosłem sukces używając:
nazwa użytkownika scp @ server: main.php /c/main.php
o czym wspominają tylko inni.
źródło
powiązane: Musiałem użyć zmiennych lokalnych na ścieżce i stwierdziłem, że użycie
cygpath
było bardzo pomocne.na przykład
zostać:
jak na ironię, po prostu:
echo $MY_FILE
sam podał ścieżkę cygwina, ale użyty w komendzie scp, jakoś tak nie było i wypluł ten sam błąd, ssh: nie można rozwiązać nazwy hosta C: nazwa hosta ani nazwa serwera, lub nieznanaźródło