Jak mogę przesłać plik na mój serwer za pomocą PuTTY?

16

podczas wywoływania SCP w PuTTY na moim Win7, nie pozwala mi to używać C: /, ale nie mam też pojęcia, gdzie na moim komputerze lokalnym domyślnie będzie szukał plików. Żaden katalog programu lub katalog użytkownika nie działał. Na przykład zapisałem file.txt obok PuTTY.exe, a także w C: \ Users \ Me, ale wywołanie SCP file.txt file.txt w PuTTY nie powiodło się z

cp: nie można stat 'file.txt'

Jak mogę przenieść plik na mój serwer za pomocą PuTTY?

EDYCJA: Również wywołanie SCP file.txt myserver:file.txtdaje podobny błąd:file.txt: No such file or directory

Trindaz
źródło
znasz pełną ścieżkę do pliku file.txt? wykonaj SCP pełna ścieżka do
Dzięki shadow_boi, ale to jest problem: użycie pełnej ścieżki oznacza dołączenie c: \, co daje mi błąd ssh: Nie można rozwiązać nazwy hosta c: Nazwa lub usługa nieznana
Trindaz
2
Myślę, że zalogowałeś się na serwerze za pomocą szpachli i wpisałeś komentarz CP, jak wspomniałeś powyżej? To jest problem. Teraz jesteś na serwerze, więc gdy wpiszesz C: serwer nie ma dysku c
1
Nie sądzę, żeby sam kit mógł to zrobić. WinSCP to ładne narzędzie GUI do bezpiecznej kopii plików, Putty działa bardzo dobrze do zadania, również przy użyciu narzędzia wiersza polecenia o nazwie pscp.
Miałem problem z użyciem pscp do skopiowania pliku przez serwer pośredni. To pytanie było dla mnie podstawą do rozgryzienia. Pełne instrukcje dotyczące stosowania tego pytanie do następnego kroku tutaj superuser.com/q/577663/57649
Scott

Odpowiedzi:

13

Próbowałeś czegoś takiego

pscp -l user1 c:\ftp\picture.jpg slacker1:/home/user1/pics

Instrukcja dla Putty sugeruje

Aby wysłać plik (i) na zdalny serwer:

pscp [options] source [source...] [user@]host:target

Aby skopiować plik lokalny c:\documents\foo.txtna serwer example.comjako użytkownik fred do pliku /tmp/foo, który napiszesz:

pscp c:\documents\foo.txt [email protected]:/tmp/foo


Postscriptum

Strona pobierania Putty umożliwia pobieranie putty.zip- kompletny zestaw narzędzi Putty lub możesz po prostu pobrać potrzebne narzędzia (w takim przypadku mógłbyś pobrać putty.exe, ale jeszcze nie pscp.exe)

RedGrittyBrick
źródło
1
Mam zainstalowany kit. Nie wydaje mi się, aby PSCP był dostępny w powłoce szpachlowej lub w mojej lokalnej powłoce. Czy możesz rzucić nieco więcej światła? Skąd uruchamiasz PSCP? Na zdrowie
JonnyRaa
1
@JonnyLeeds: uruchamiam go z wiersza polecenia systemu Windows (cmd) z katalogu instalacyjnego Putty, np. C:\Program Files (x86)\PuTTY\pscp.exeW moim przypadku. Możesz umieścić pełną ścieżkę w podwójnych cudzysłowach (ze względu na spacje) lub dodać katalog do% PATH% (zobacz inne odpowiedzi tutaj, jak to zrobić).
RedGrittyBrick
1
Cześć, dziękuję za odpowiedź, ale wszystko, co mam w folderze szpachli to putty.exe, puttygen.exe i plik ppk
JonnyRaa
1
@JonnyLeeds: Możesz pobrać tylko pscp.exe z chiark.greenend.org.uk/~sgtatham/putty/download.html lub pobrać putty.zip zawierający kompletny, spójny zestaw najnowszej wersji narzędzi Putty i zastąpić rzadki zestaw masz.
RedGrittyBrick
Świetna odpowiedź. Jeszcze jedna ciekawostka: często nie możesz użyć kropki po dwukropku w zdalnej lokalizacji, jeśli nie wiesz, dokąd chcesz przenieść plik. Na przykład: pscp -l nazwa użytkownika C: \ katalog \ plik.txt serwer :.
TOOGAM
6

Rozwiązanie, które nie korzysta z PuTTY: Połącz się z serwerem za pomocą FileZilla, używając SFTP do przesyłania plików.

Trindaz
źródło
5

Nie ma możliwości zainicjowania transferu plików z powrotem do / z lokalnego systemu Windows z sesji SSH otwartej w oknie PuTTY.

Chociaż najnowsze wersje PuTTY obsługują udostępnianie połączeń.

Chociaż nadal musisz uruchomić kompatybilnego klienta przesyłania plików ( pscplub psftp), nie jest wymagane nowe logowanie, ale automatycznie (jeśli jest włączone) korzysta z istniejącej sesji PuTTY.

Aby włączyć udostępnianie, patrz:
Udostępnianie połączenia SSH między narzędziami PuTTY .


Alternatywnym sposobem jest użycie WinSCP, GUI SFTP / SCP . Podczas przeglądania zdalnej witryny można w dowolnym momencie otworzyć terminal SSH w tej samej witrynie za pomocą polecenia Otwórz w PuTTY .

Zobacz: Sesja otwierająca w PuTTY .

Dzięki dodatkowej konfiguracji możesz nawet sprawić, że PuTTY automatycznie przejdzie do tego samego katalogu, który przeglądasz za pomocą WinSCP.

Zobacz Otwieranie PuTTY w tym samym katalogu .

(Jestem autorem WinSCP)

Martin Prikryl
źródło
0

Nie mogłem znaleźć PSCP, jak zasugerowałem powyżej, i skończyłem na WinScp.

Jest to program po stronie klienta z graficznym interfejsem użytkownika, który rejestruje twoje konfiguracje kitów.

JonnyRaa
źródło
chiark.greenend.org.uk/~sgtatham/putty/download.html oferuje pscp.exe i podobny plik psftp.exe. The.earth.li/~sgtatham/putty/latest/x86/... (dla wersji 0.63, który jest najnowsza wersja w czasie pisania tego tekstu) może być najprostszy dla ludzi, którzy wolą być deptany przez prosty proces instalacji przy użyciu GUI, podczas gdy plik putty.zip zawiera również putty.exe oraz pscp.exe i psftp.exe
TOOGAM
0
  1. W PSFTP otwórz folder, w którym chcesz umieścić plik.
    Np. nazwa pliku cd
  2. W wierszu polecenia wpisz: lcd pathtofolder
    Ex. lcd C: \ Users \ Lyn \ Pictures
  3. Kliknij enter i wpisz: put filename
    Ex. umieść lynhw1.pdf
  4. Kliknij Enter, a plik powinien zostać przesłany

Mam nadzieję, że to działa dla ciebie tak samo jak dla mnie.
Uwaga: Zrobiłem to w PSFTP przy użyciu Putty.

„PSFTP, klient PuTTY SFTP, to narzędzie do bezpiecznego przesyłania plików między komputerami za pomocą połączenia SSH” - http://the.earth.li/~sgtatham/putty/0.52/htmldoc/Chapter6.html

Pobierz PSFTP na stronie http://www.putty.org/ . Tutaj możesz pobrać kit.

Lyn
źródło
-2

Jeśli chcesz zautomatyzować tego rodzaju przesyłanie plików za pomocą .bat:

@echo off

set pw=foobemcfoobar

set inp=input.lst

for /F "tokens=*" %%i in (%inp%) do (

echo %%i

echo y | C:\tmp\pscp.exe -C -agent -pw "%pw%" C:\tmp\files\foo.txt root@%%i:/tmp/

echo "=== Accepting SSH, copying ...==="

 )

(gdzie input.lstjest plik tekstowy z wymienionymi celami)

Nin Kan
źródło
Być może jest to związane z tematem , ale nie odpowiada na pytanie.
Mówię: Przywróć Monikę
Nie sugeruj też, aby ludzie na ślepo akceptowali klucz hosta za pomocą echo y. W ten sposób tracisz bezpieczeństwo.
Martin Prikryl
mhh zgodził się, że „echo y” jest kwestią bezpieczeństwa. jeśli chodzi o trafność, właśnie wziąłem tę kopię pliku, pomyślałem o krok dalej, ponieważ byłem w tej właśnie sytuacji
Nin Kan