2012-02-24 2 views
5

Ho bisogno di ssh in una casella di Windows 7 che esegue il daemon SSH MobaSSH e il nome utente nella casella di Windows contiene uno spazio. Posso accedere alla casella di Windows 7 su un terminale OSX in questo modo:scp su OSX non consente gli spazi nei nomi utente?

ssh "Some User"@WindowsHost 

così ho pensato che sarei in grado di utilizzare il comando SCP su OSX per trasferire i file tra i computer, ma continuo a ricevere un errore dicendo "nome utente non valido" ogni volta che faccio qualcosa di simile:

scp myfile "Some User"@WindowsHost:~/myfile 

ho guardato dentro e ha trovato this question on stackoverflow, ma che è soprattutto di uno spazio all'interno dei percorsi di file.

Ho trovato a bug posted about this issue in a specific version of scp, ma non sono sicuro di come correggere scp su OSX. La patch è disponibile come file .c.

La mia ultima risorsa è creare un nuovo nome utente nella casella di Windows 7 e trasferire tutte le impostazioni del mio profilo a quel nuovo utente. Sembra una vera seccatura dato che posso accedere tramite ssh, ma non scp.

Qualche consiglio?

risposta

9

Aggiungere una configurazione speciale per ssh configurazione del vostro utente Mac, di solito in ~/.ssh/config

Host mySpaceyUsernameHost 
User "Some User" 
HostName WindowsHost 

Si dovrebbe quindi essere in grado di scp file utilizzando tale nome di configurazione:

scp myfile mySpaceyUsernameHost:~/myfile 

Ho appena provato questo su OS X 10.7 (Lion) e ha funzionato da un Mac a un altro, mentre le altre opzioni (quotate, o backlash-escape) non lo hanno fatto .... quindi è qualcosa.

+0

che ha funzionato come un fascino. Mai sentito parlare del file di configurazione, grazie per far luce su quello che può fare! – ariestav

+0

Incredibilmente utile! Questo funziona anche per gli host remoti OS/X. Ho appena fatto questo per scp da OS/X a OS/X, dove il nome utente remoto aveva uno spazio in esso. –

+0

Per chiunque si chieda (come me) questo funziona anche con Ubuntu =) [Escape username spaces in SCP] (http://askubuntu.com/a/774921/304936) – cavpollo

2

Hai provato Some\ [email protected]? Lo spazio di escape può funzionare a meno che non ci sia effettivamente un bug in scp.

In alternativa, non potresti semplicemente cambiare il nome utente di vedove 7 e rimuovere lo spazio?

+0

Il trucco backslash non ha funzionato per me (OS X 10.7) Penso che sia in realtà un bug. Ma una voce di configurazione per l'host ha funzionato (vedi la mia risposta sopra). – bpanulla

+1

Sì, l'ho provato, e non ha funzionato. Grazie per il suggerimento. – ariestav

+0

funziona in macOS Sierra (10.12) dal terminale – Lezz