免责声明:我对 ps 的了解还不够,无法在合理的时间内完成此任务,所以是的,我要求其他人做我的肮脏工作。
我希望能够在不打开命令行的情况下运行 web.config 转换。
我在一个文件夹中有以下文件:
web.config - actual web config
web.qa.config - web config transformation for qa env
web.production.config - web config transformation for production env
transform.ps1 - powershell script I want to use to run transformation
这就是我想要的:PS 文件应使用枚举当前目录.*\.(?<env>.*?)\.config
并让我选择<env>
我感兴趣的生成 web.config 的目录。在我的示例中,我将看到两个选项:“qa”、“production”。
在我(用户)选择环境后(假设它是“qa”,选择的环境存储为 $env,相应的文件名将存储为 $transformation)脚本应执行以下操作:
- 备份原件
web.config
为web.config.bak
- 执行以下命令:
.
echo applying $transformation...
[ctt][1].exe source:web.config transformation:$transformation destination:web.config preservewhitespaces verbose
echo done.
ctt .exe 是一个基于 XDT 的工具,可以从命令行运行 web.config 转换。