我想通过appcmd/batch 文件或PowerShell 脚本以自动化的方式添加/删除/编辑IIS、asp.net 核心网站环境变量,不仅是一个网站的变量,而且是批量操作。虽然我可以通过使用 IIS UI 来做到这一点
虽然我可以使用 appcmd 添加环境变量
appcmd.exe 重置配置“变量”-section:system.webServer/aspNetCore /+“environmentVariables.[name='foo',value='bar']”
我无法通过单击单个按钮而不是通过每个网站的配置设置来设置多个值来添加/删除/更新多个网站环境值,之后我可以在 Azure DevOps 管道中使用该内联脚本
您可以将多个 powershell 写入一个文件并执行它。这里有一个例子供参考。
创建一个文件并命名为“xxx.ps1”。
编写多个 powershell 语句。
Add-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST/Core Web Site' -filter "system.webServer/aspNetCore/environmentVariables" -name "." -value @{name='foo';value='bar'}
Add-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST/Core Web Site' -filter "system.webServer/aspNetCore/environmentVariables" -name "." -value @{name='doc';value='qwe'}
Add-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST/Default Web Site' -filter "system.webServer/aspNetCore/environmentVariables" -name "." -value @{name='foo';value='bar'}
Write-Output ('Execute succeed')
编辑和删除环境值
Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST/Core Web Site' -filter "system.webServer/aspNetCore/environmentVariables/environmentVariable[@name='foo' and @value='bar']" -name "name" -value "foo2"
Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST/Core Web Site' -filter "system.webServer/aspNetCore/environmentVariables/environmentVariable[@name='foo' and @value='bar']" -name "value" -value "bar2"
Remove-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST/Core Web Site' -filter "system.webServer/aspNetCore/environmentVariables" -name "." -AtElement @{name='foo1';value='bar1'}
打开powershell执行文件(文件路径+名称)。
PS C:\WINDOWS\system32> & "D:\floder1\xxx.ps1"
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句