Jak skopiować plik na inny komputer przez terminal?

39

Mam Ubuntu 10.04 działający przez VMPlayer. I mam inną maszynę (router Asus RT-N16). Jestem w stanie połączyć się z routerem za pomocą telnet i zobaczyć jego system plików. Jak mogę skopiować plik z komputera lokalnego (plik to / home / user / helloworld-c ) na router (folder * / tmp / mnt / discb_1 *)?

LA_
źródło

Odpowiedzi:

76

Czy istnieje możliwość połączenia przez SSH? Może powinieneś rozważyć użyteczność „scp”. To bardzo proste, spójrz na stronę podręcznika :

man scp

Bardzo podstawowe zastosowanie:

scp remote_user@remote_host:/path/to/remote/file /path/to/local/file

i wzajemnie:

scp /path/to/local/file remote_user@remote_host:/path/to/remote/file
Pavel S.
źródło
Dzięki, działa! Jak mogę zrobić to samo z całym folderem?
LA_
4
Użyj opcji „-r”: scp -r użytkownik @ host: / ścieżka / plik / ścieżka / lokalny. Proszę zaznaczyć odpowiedź jako zaakceptowaną, jeśli działa.
Pavel S.4
Wystarczy spojrzeć na stronę podręcznika scp (w terminalu wpisz „man scp”). Jest o wiele więcej opcji.
Pavel S.
Jak mogę skopiować foldery również z plikami, to polecenie po prostu kopiuje tylko pliki
amit_game
@LA_ możesz spakować wszystkie pliki.
Silvio Delgado,
12

Aby skopiować niepusty katalog z komputera zdalnego na komputer:

scp -r [email protected]:/home/vrc/Desktop/www /home/ourusername/Desktop

Aby skopiować plik, po prostu wyklucz -ropcję:

scp [email protected]:/home/vrc/Desktop/file1 /home/ourusername/Desktop

Aby skopiować z komputera na komputer zdalny, wystarczy zmienić lokalizację i miejsce docelowe w poprzednim przykładzie. Aby uzyskać więcej informacji, wykonaj man scp.

errakeshpd
źródło
10

Inny sposób: (za pomocą pliku pem)

Jeśli chcesz użyć pempliku i jesteś ROOTużytkownikiem:

1. użytkownik root:

sudo scp -i ~/servers/your-key.pem ~/your-local-source-path/your-local-file.txt [email protected]:/you-server-destination-path/

zwróć uwagę na dwukropek :między IPścieżką serwera a miejscem docelowym.

jeśli nie mogę się zalogować z rootużytkownikiem, zobacz krok 2.

2. standardowy użytkownik:

Załóżmy, że jesteś ubuntuużytkownikiem posiadającym standardowe uprawnienia.

sudo scp -i ~/servers/your-key.pem ~/your-local-source-path/your-local-file.txt [email protected]:/home/ubuntu/

spowoduje to umieszczenie pliku w katalogu domowym. następnie zaloguj się do zdalnego serwera ze standardowym użytkownikiem. i robić

sudo su

przejdziesz do rootużytkownika. następnie przenieś plik do katalogu docelowego

mv /home/ubuntu/your-local-file.txt /you-server-destination-path/your-local-file.txt

Często napotykam ten problem, dlatego dzielę się alternatywnym sposobem na wykonanie pracy!

Kaleem Ullah
źródło