在powershell中为github自动化ssh-keygen

时间:2013-09-07 04:39:10

标签: git powershell ssh-keygen

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

# 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:我使用poshgit取决于mysysgit

1 个答案:

答案 0 :(得分:5)

PowerShell似乎删除了空的双引号,可能需要转义它们。使用""""代替""似乎有效。另外,我认为应该使用-P(密码)而不是-N(如果你更改密码,则使用新的密码)。所以最后的命令行是ssh-keygen -t rsa -C "$MyEmailAddress" -f "id_rsa_test" -P """"