Como faço para deslocar para um servidor se o nome de usuário contém @ símbolo

19

Eu tenho que sftp para um servidor para uma porta específica, mas o nome de usuário contém o símbolo @.

suponha que o usuário seja "[email protected]" e o servidor ftp é apenas "example.com"

Eu terminarei com

sftp -oPort:8777 [email protected]@example.com

o que obviamente não funcionará, como testei.

Que tipo de amador cria um nome de usuário com @? Ok, meu chefe fez.

Como resolvo isso?

    
por SpaceDog 21.10.2013 / 18:32

2 respostas

27

Passe o nome do usuário pela opção -o User ou pela diretiva equivalente User no arquivo de configuração do cliente ( ~/.ssh/config ).

sftp -o Port:8777 -o [email protected] example.com

Isso se aplica também a ssh , scp e sshfs . Usar o arquivo de configuração em vez das opções -o tem a vantagem de também trabalhar com ferramentas que chamam ssh e não permitem que você passe facilmente pelas opções de linha de comando.

    
por 21.10.2013 / 18:41
5
sftp -o Port:8777 '[email protected]'@domain.com

Isso também funcionaria, embora seja uma forma realmente inadequada para fornecer usuários com esse tipo de nome.

    
por 13.11.2014 / 20:59

Tags