2012-04-19 20 views
25

Sto eseguendo un client putty su Windows Machine per collegarmi con successo a una macchina Linux. Ora voglio essere in grado di copiare il file in linux machine/home/ubuntu/myfile in C:/Users/Anshul/Desktop sul mio computer locale. L'utente su windows machine è anshul. Sto dando il seguente comando su stucco ma non funzionascp da linux a windows

scp /home/ubuntu/myfile ip_address_of_windows_machine:C:/Users/Anshul/Desktop 

Penso che il percorso per la macchina Windows sia errato. Si prega di aiutare come ho sbattuto la testa su un gran numero di forum, ma nessuno sembra dare il percorso corretto per Windows Server. Non suggerire opzioni alternative come Winscp

+3

Quindi, cosa stai facendo per un servizio ssh * su Windows? La risposta corretta dipenderà dalla tua risposta a questa domanda. –

+2

La frase "Non funziona" è la cosa meno utile che tu possa dire quando chiedi aiuto. CHE COSA NON FUNZIONA? Che risultati ottieni? Ci sono messaggi di errore? Se è così, includile nel tuo post. –

+0

Prova 'ssh -v ip_address_of_windows_machine dir' Se non riesci a ssh sulla casella, non puoi nemmeno scp. L'opzione '-v' fornirà un feedback su come sta cercando di connettersi e aiuterà a capire se si tratta dell'indirizzo ip, del server sshd sulla finestra di windows, ecc ... –

risposta

5

Windows non supporta SSH/SCP/SFTP in modo nativo. Stai eseguendo un'applicazione server SSH su quel server Windows? In tal caso, una delle opzioni di configurazione è probabilmente dove si trova la radice e si dovrebbero specificare percorsi relativi a tale radice. In ogni caso, consultare la documentazione per l'applicazione server SSH in esecuzione in Windows.

In alternativa, utilizzare smbclient per inviare il file a una condivisione Windows.

+11

»Windows non supporta SSH/SCP/SFTP in modo nativo.« Né Linux né alcun altro sistema operativo. Ha sempre bisogno di un servizio per questo. – Joey

+0

@Joey - Numero di volte in cui ho visto una distro Linux destinata a connettersi a Internet ma non ho preinstallato SSH/SCP/SFTP ... mai? Se non pensate che Linux o macOS supportino queste cose in modo nativo, allora non siete né all'oscuro né al dibattito su cosa significhi la parola "nativamente". – ArtOfWarfare

+0

@ArtOfWarfare Sono abbastanza sicuro che Ubuntu non abbia il server SSH installato di default. Client SSH sì, ma non server. –

-8

Se si desidera copiare i file incollare da UNIX a Windows e Windows a Unix basta usare FileZilla con la porta 22.

-3

Prova questo: SCP/home/ubuntu/myfile C: \ Users \ Anshul \ Desktop

+0

Sì, ha funzionato bene. Dal momento che sto eseguendo questo sul mio PC Windows locale e sto eseguendo SCP, conosce il mio C: \ drive. Non sto eseguendo questo comando dalla scatola Linux, lo sto eseguendo dal mio PC Windows. –

+1

Questo non può funzionare – Private

18

Prova questo, funziona davvero.

$ scp [email protected]_host_ip:/home/ubuntu/myfile /cygdrive/c/Users/Anshul/Desktop 

E per la copia di tutti i file

$ scp -r [email protected]_host_ip:/home/ubuntu/ *. * /cygdrive/c/Users/Anshul/Desktop 
+1

Questo è fantastico. Sei un salvatore! –

+3

Notare "/ cygdrive/c" nel percorso? Questo funzionerà dopo l'installazione di CYGWIN. Ancora è un grande suggerimento! –

+2

Su Windows, si può anche scegliere di usare pscp (parte del pacchetto PuTTY o può essere scaricato separatamente) http: //www.putty.org/ –

2

IMHO, si può usare qualcosa come il seguente

scp -r [email protected]:Path/To/File . 

Il . copierà i File nella directory predefinita locale del programma. Ad esempio, utilizzando GitBash, salva il file nella cartella di lavoro configurata in D: unità.

0

Ecco la soluzione per copiare i file da Linux a Windows utilizzando SCP senza password ssh

  1. Installare sshpass in macchina Linux di saltare richiesta di password

  2. Script

sshpass -p 'xxxxxxx' scp/home/user1/. [email protected]:/d/test/

Dettagli:

sshpass -p 'password' SCP/source_path/. windowsusername @ windowsMachine_ip:/destination_drive/sottocartella/

Grazie, Ramarajan Jothi

32

Scarica pscp da Putty download page, quindi utilizzare da CMD macchina Windows in questo modo:

pscp [email protected]_of_linux_machine:/home/ubuntu/myfile.ext C:\Users\Name\Downloads 

vi chiederà su la password del nome utente della macchina Linux, quindi fai la copia per te.

+1

davvero un ottimo consiglio! – davidgale

+0

+1 ... ma sono stato sorpreso dal fatto che quando ho digitato la mia password, pscp non ha offuscato la password nella CLI? – joshmcode

-1

So che questo è vecchio ma stavo lottando con lo stesso. Non ho trovato un modo per cambiare le directory, ma se si vuole lavorare con l'unità C, scp si imposta su C. Per scp da Ubuntu a Windows, ho finito per dover usare (notare le doppie barre posteriori):

SCP/local/file/percorso [email protected]: gli utenti \\ Anshul \\ Desktop

Spero che questo aiuti qualcuno.

+0

Funzionerà per l'utente amministratore? Quali configurazioni dobbiamo fare nella casella di Windows? –

+0

ubuntu @ ip-172-31-22-20: ~ $ scp try.sh Amministratore @ xxxxxxx: Utenti \\ Amministratore \\ Desktop ssh: connessione all'host "xxxxxx" porta 22: Connessione rifiutata connessione persa –

0

Per tutti, che ha installato GiT completamente con "Git Bash": Si può solo scrivere:

scp [email protected]_addres:/location/to/folders/file.tar . 

(con lo spazio e DOT alla fine per copiare alla posizione attuale). Quindi basta aggiungere un certificato (y), scrivere la password e basta.