我试图在 macOS 上将一个公钥复制到剪贴板上,但总是得到“没有这样的文件或目录”我使用的命令粘贴在下面
pbcopy < ~/.ssh/id_rsa.pub
Does the file ~/.ssh/id_rsa.pub exist? If not, you need to generate one first:
~/.ssh/id_rsa.pub
ssh-keygen -t rsa -C "your_email@example.com"
检查生成公钥的路径。您也可以使用以下命令复制 id_rsa:
id_rsa
clip < ~/.ssh/id_rsa.pub
cat ~/.ssh/id_rsa.pub
然后可以复制 ssh 键
cat .ssh/id_rsa.pub | bcopy
这对我有用。
在 Windows 上使用 Git bash:
cat ~/.ssh/id_rsa.pub > /dev/clipboard
(改编自朱庇特圣约翰的 Coderwall 的帖子)
将公钥复制到剪贴板
cat ~/.ssh/id_rsa.pub | pbcopy
这将文件的输出传送到 pbcopy。
另一种解决办法:
cat ~/.ssh/id_rsa.pub | xsel -i -b
来自 man xsel:
man xsel
- 我...-输入 将标准输入读入选定内容。 - B-写字板 操作剪贴板选择。
- 我...-输入
将标准输入读入选定内容。
- B-写字板
操作剪贴板选择。
Another alternative solution, that is recommended in the github help pages:
Should this fail, I recommend using their docs to trouble shoot or generate a new key - if not already done.
Github 文件
在 Windows 上使用 PowerShell,您可以使用:
Get-Content ~/.ssh/id_rsa.pub | Set-Clipboard
窗口:
Mac OS:
您的命令是正确的,但是错误显示您还没有创建 ssh 密钥。要生成新的 ssh 密钥,请在终端中输入以下命令。
ssh-keygen
输入命令后,您将被要求输入文件名和密码。通常你不需要改变这个。按回车键。然后您的密钥将在 ~/.ssh目录中生成。在此之后,您可以通过以下命令复制密钥。
~/.ssh
或者
cat .ssh/id_rsa.pub | pbcopy
你可以在这里找到更多关于这个 ssh。
要在 Windows 机器上复制您的公共 ssh 密钥,您可以这样做:
转到“/ssh”文件夹
cd C:\Users\<your-user>\.ssh\
列表查看密钥
ls ~/.ssh
将公钥复制到剪贴板(以“ id _”开始,以“ . pub”结束)
type id_xxxxxxx.pub | clip
尽管 OP 提到了一个可能的 ssh 密钥文件名(id_rsa.pub) ,但是没有人提到 ssh 密钥有不同的可能名称。 例如,Github 接受三种方式:
id_rsa.pub
id_rsa.pub id_ecdsa.pub id_ed25519.pub
如果你有 any密钥,你最好检查一下,比如:
$ ls -al ~/.ssh # Lists the files in your .ssh directory, if they exist
根据您的发现,然后使用 copy 命令,如
pbcopy < ~/.ssh/<your_key>
在检查现有密钥时,请参阅 Github 的文档。