我必须将服务器 sftp 发送到特定端口,但用户名包含 @ 符号。
假设用户是“user@example.com”,而 ftp 服务器只是“example.com”
我会以
sftp -oPort:8777 user@example.com@example.com
Run Code Online (Sandbox Code Playgroud)
正如我已经测试过的那样,什么显然不起作用。
什么样的业余爱好者会用@ 创建用户名?好的,我的老板做到了。
我该如何解决?
Gil*_*il' 40
通过-o User选项或通过User客户端配置文件 ( ~/.ssh/config) 中的等效指令传递用户名。
sftp -o Port:8777 -o User=user@example.com example.com
Run Code Online (Sandbox Code Playgroud)
这适用于ssh,scp也适用sshfs。使用配置文件而不是-o选项的优点是还可以使用调用ssh并且根本不允许您轻松传递命令行选项的工具。
小智 7
sftp -o Port:8777 'user@domain.com'@domain.com
Run Code Online (Sandbox Code Playgroud)
这也可以工作,尽管他们为用户提供这种类型的名称的形式确实很糟糕。