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 seja apenas "example.com"
Vou terminar com
sftp -oPort:8777 [email protected]@example.com
o que obviamente não vai funcionar, como eu testei.
Que tipo de amador cria um nome de usuário com @? Ok, meu chefe fez.
Como eu resolvo isso?
sftp -oPort:8777 user\@[email protected]
Respostas:
Passe o nome do usuário pela
-o User
opção ou pelaUser
diretiva equivalente no arquivo de configuração do cliente (~/.ssh/config
).Isso se aplica a
ssh
,scp
esshfs
também. O uso do arquivo de configuração em vez das-o
opções também tem a vantagem de trabalhar com ferramentas que chamamssh
e não permitem que você passe facilmente as opções da linha de comando.fonte
ssh
esftp
(escp
também).@
ou/
na senha. Você apenas os digita. O SSH nem sequer permite passar a senha na opção de linha de comando ou em um arquivo de configuração.Isso também funcionaria, embora seja realmente uma forma muito ruim de fornecer aos usuários esse tipo de nome.
fonte
Substituir
@
("comercial em") por+
("sinal de mais)" pode ser aceitável em alguns servidores SFTP:fonte