自動更新とめてLastUpdateCheckTimeを拝借して6日更新で似たような事をやってるけど
なんでそんなにスクリプトがでかくなるんだろう
半分くらいで済むような
$inifil="./Jane2ch.ini" # ini file name
$uptime="LastUpdateCheckTime=" # update time
$inibuf=Get-Content -Path $inifil -Raw # read ini file
$datidx=$inibuf.IndexOf($uptime) # get uptime idx
if ($datidx -gt 0) { # exist
$datchr=$inibuf.Substring($datidx+20,8) # date get char
} else {
$datchr="25/01/01" # date init
$inibuf=$inibuf+"`n"+$uptime+$datchr+"`n" # add to ini
}
$datrep=Get-Date -Format "yy/MM/dd" # date now char
if (((Get-Date $datrep)-(Get-Date $datchr)).Days -gt 5) { # compare time diff
$inibuf=$inibuf -replace "(?<=MonaTicket=.{0,0}?)(.*)","" # clear ticket
$inibuf=$inibuf.Replace($uptime+$datchr,$uptime+$datrep) # update date
Set-Content -Path $inifil -Value $inibuf -Encoding default # flash ini file
Write-Host "update at $datrep`n" # cleared msg
} else {
Write-Host "$datchr within limit`n" # within limit msg
}
Start-Sleep -Seconds 2 # wait