Saya telah scripting konfigurasi kami misalnya IIS 7.5 dan melalui potongan -potongan masyarakat skrip lain saya harus datang dengan sintaks yang saya seperti:
$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
}
Saya telah melihat ini melakukan sejumlah cara berbeda yang kurang singkat dan saya suka cara sintaks pengaturan properti objek ini terlihat dibandingkan dengan sesuatu seperti apa yang saya lihat di TechNet :
Set-ItemProperty 'IIS:\AppPools\DemoPool' -Name recycling.periodicRestart.requests -Value 100000
Satu hal yang saya belum bisa mengetahuinya adalah bagaimana mengatur jadwal daur ulang menggunakan sintaks ini.
Perintah ini menetapkan ApplicationPoolDefaults tetapi jelek:
add-webconfiguration system.applicationHost/applicationPools/applicationPoolDefaults/recycling/periodicRestart/schedule -value (New-TimeSpan -h 1 -m 30)
Saya telah melakukan ini di masa lalu melalui appcmd menggunakan sesuatu seperti berikut tapi saya benar-benar ingin melakukan semua ini melalui PowerShell:
%appcmd% set apppool "BusinessUserApps" /+recycling.periodicRestart.schedule.[value='01:00:00']
Saya telah mencoba:
$WebAppPool.recycling.periodicRestart.schedule = (New-TimeSpan -h 1 -m 30)
Ini memiliki efek aneh mengubah properti .schedule menjadi rentang waktu sampai saya menggunakan $ WebAppPool = get-item iis: \ AppPools \ AppPoolName untuk menyegarkan variabel.
Ada juga $WebappPool.recycling.periodicRestart.schedule.Collection
tetapi tidak ada fungsi add () pada koleksi dan saya belum menemukan cara lain untuk memodifikasinya.
Adakah yang tahu cara saya dapat mengatur waktu daur ulang terjadwal menggunakan sintaks yang konsisten dengan kode yang saya tulis di atas?
sumber
Jawaban:
Saya tidak pernah tahu bagaimana mengatur ini pada objek itu sendiri, tetapi setelah membuatnya bekerja sebagai berikut:
sumber
Jadi tidak adil
kemudian? Atau setara ToString dari TimeSpan?
(Saya tidak menggunakan PowerShell; hanya tebakan sintaksis berdasarkan bit Anda yang lain).
sumber