1
このスクリプトでは、ローカルマシンの証明書に関する情報を収集し、証明書の期限が切れる日数をJSONで表示します。私が必要powershellスクリプトの編集方法がわかりません
{ "{#CERTINFO}" : "@{Expires in (Days)=8074}" }
は8074
(日)を必要とし、このスクリプトを編集する方法を見つけ出すことはできませんです。
$cert_ = get-childitem cert:LocalMAchine -recurse |
where-object {$_.NotAfter -gt (get-date)} |
select @{Name="Expires in (Days)";Expression={($_.NotAfter).subtract([DateTime]::Now).days}} |
Sort "Expires in (Days)"
write-host "{"
write-host " `"data`":[`n"
$idx = 1
foreach ($cert_arr in $cert_)
{
if ($idx -lt $cert_.Count)
{
$line= "{ `"{#CERTINFO}`" : `"" + $cert_arr + "`" },"
write-host $line
}
elseif ($idx -ge $cert_.Count)
{
$line= "{ `"{#CERTINFO}`" : `"" + $cert_arr + "`" }"
write-host $line
}
$idx++;
}
write-host
write-host " ]"
write-host "}"
これは、PowerShellを書くにはかなりひどい方法です。おそらく、あなたは単にやり直すべきです(そしてその過程で、言語について何かを学んでください)。 – Joey
何を試しましたか?すべてのwrite-hostステートメントを削除することから始めます。 –
ええ、それは理解している:> –