4

有没有办法ssh-keygen在powershell中自动化该方法?我正在尝试使用以下代码执行此操作,但它需要用户输入密码。

# Create your GitHub SSH Key
$MyEmailAddress = "some.user@github.com"
if (! (Test-Path  ("~/.ssh/id_rsa_test"))){

    ssh-keygen -t rsa -C "$MyEmailAddress" -f "id_rsa_test"

}

我尝试输入密码开关,但随后它抱怨密码为空。

# either
ssh-keygen -t rsa -C "$MyEmailAddress" -f "id_rsa_test" -N ""

# or 
ssh-keygen -t rsa -C "$MyEmailAddress" -f "id_rsa_test" -N "$null"

我不想在我的密钥中输入密码。

PS:我正在使用依赖于mysysgit的poshgit

4

1 回答 1

10

PowerShell 似乎删除了空的双引号,并且可能需要转义它们。使用""""而不是""似乎有效。另外,我认为应该使用-P(passphrase) 而不是-N(new passphrase in case you change it)。所以最后的命令行是

ssh-keygen -t rsa -C "$MyEmailAddress" -f "id_rsa_test" -P """"
于 2013-09-07T19:52:23.307 回答