Pat*_*ter 4 windows ssh git-bash
我想将公钥从 Windows 系统复制到我的服务器。我遇到的问题是,我没有找到密钥的路径。我尝试过类似的事情:
ssh-copy-id -i C:/Users/username/.ssh/mykey.pub user@serverIP
ssh-copy-id -i ~/.ssh/mykey.pub user@serverIP
Run Code Online (Sandbox Code Playgroud)
结果总是
没有这样的文件或目录
我究竟做错了什么?我在Windows 10上使用Git Bash
Ynj*_*jmh 11
Git 的 ssh 是OpenSSH的一个版本。您可以通过运行来ssh -V
确认path\to\git\usr\bin
。这是它在我的机器上的评估结果:
OpenSSH_7.7p1, OpenSSL 1.0.2o 27 Mar 2018
Run Code Online (Sandbox Code Playgroud)
ssh-copy-id
脚本在内部执行一些 *nix shell 命令(例如exec
、cat
等。您可以通过在文本模式下打开下面的命令来找到更多命令path\to\git\usr\bin
),因此它仅适用于 *nix 机器。ssh-copy-id
这就是为什么underpath\to\git\usr\bin
不是可执行文件的原因。
根据PowerShell/Win32-OpenSSH的此问题,Windows 上不支持。ssh-copy-id
然而,还有一些替代方法可以完成同样的事情:
这个答案的 powershell 版本可以是
OpenSSH_7.7p1, OpenSSL 1.0.2o 27 Mar 2018
Run Code Online (Sandbox Code Playgroud)
还有一个 python 脚本可以做同样的事情:ssh-copy-id for Windows。