通过powershell

时间:2016-11-29 10:18:10

标签: powershell certreq

我正在尝试构建可以更新过期证书的工具,并且我正在调用certreq命令:

这个正在运作:

Invoke-Command -ComputerName $Srvname -ScriptBlock {Set-Location -Path 'D:\'; $Out = cmd /c 2>&1 'certreq -q -f -new D:\cert\request_new.inf D:\cert\certreq.csr'}

但那个不是

Invoke-Command -ComputerName $Srvname -ScriptBlock {Set-Location -Path 'D:\'; $Out = cmd /c 2>&1 'certreq -f -attrib "CertificateTemplate:WebServer" -submit D:\cert\certreq.csr D:\cert\request.cer'}

我认为是因为我需要接受来自证书颁发机构的提示,并且该提示不会显示。

该脚本在执行时适用于localy:

certreq -f -attrib "CertificateTemplate:WebServer" -submit D:\cert\certreq.csr D:\cert\request.cer

你有什么想法吗?

我已经尝试过psexec,但那也没有用。 :S

1 个答案:

答案 0 :(得分:1)

来自the certreq.exe documentation

-q      Use silent mode; suppress all interactive prompts.