Я скриптовая конфигурацию нашего экземпляра IIS 7.5 и через биты и куски других сценариев народов я пришел с синтаксисом , который я , как:
$WebAppPoolUserName = "domain\user"
$WebAppPoolPassword = "password"
$WebAppPoolNames = @("Test","Test2")
ForEach ($WebAppPoolName in $WebAppPoolNames ) {
$WebAppPool = New-WebAppPool -Name $WebAppPoolName
$WebAppPool.processModel.identityType = "SpecificUser"
$WebAppPool.processModel.username = $WebAppPoolUserName
$WebAppPool.processModel.password = $WebAppPoolPassword
$WebAppPool.managedPipelineMode = "Classic"
$WebAppPool.managedRuntimeVersion = "v4.0"
$WebAppPool | set-item
}
Я видел, что это было сделано несколькими различными способами, которые менее лаконичны, и мне нравится, как выглядит этот синтаксис установки свойств объекта по сравнению с чем-то вроде того, что я вижу в TechNet :
Set-ItemProperty 'IIS:\AppPools\DemoPool' -Name recycling.periodicRestart.requests -Value 100000
Однако я не смог понять, как настроить расписания с использованием этого синтаксиса.
Эта команда устанавливает ApplicationPoolDefaults, но выглядит ужасно:
add-webconfiguration system.applicationHost/applicationPools/applicationPoolDefaults/recycling/periodicRestart/schedule -value (New-TimeSpan -h 1 -m 30)
В прошлом я делал это через appcmd, используя что-то вроде следующего, но я действительно хотел бы сделать все это через powershell:
%appcmd% set apppool "BusinessUserApps" /+recycling.periodicRestart.schedule.[value='01:00:00']
Я пытался:
$WebAppPool.recycling.periodicRestart.schedule = (New-TimeSpan -h 1 -m 30)
Это имеет странный эффект превращения свойства .schedule в промежуток времени, пока я не использую $ WebAppPool = get-item iis: \ AppPools \ AppPoolName для обновления переменной.
Существует также, $WebappPool.recycling.periodicRestart.schedule.Collection
но нет функции add () в коллекции, и я не нашел другого способа изменить ее.
Кто-нибудь знает, как я могу установить запланированное время перезапуска с использованием синтаксиса в соответствии с кодом, который я написал выше?
источник
Ответы:
Я никогда не мог понять, как установить это на самом объекте, но после его создания работает следующее:
источник
Так что не просто
тогда? Или ToString эквивалент TimeSpan?
(Я не PowerShell; просто синтаксическая догадка, основанная на ваших других битах).
источник