-1
我需要Powershell脚本的帮助我在AnthillPro中编写了自动更新发行版本号的配置文件。AnthillPro(Powershell脚本) - 单引号内的变量未得到解决
我在阅读我的Config文件以查找当前版本,然后使用'gc'命令使用另一个值更改它。
问题是变量$ currentRelease在'gc'命令的第一个参数中没有得到解决,因为这是单引号。 我曾尝试使用转义字符,但无法解决问题。
如何解决$ currentRelease获取存储在其中的值? 请让我知道你的建议。
(注意变量configFolder,ConfigFilename,appSettingsNewValue &发布不到AntHillPro预定义的性能和越来越正确地解决了这些问题没有。)
更新:我现在能够成功地更换所需的文本。但是我现在遇到了替换后形成的XML文件被破坏的问题。文件开始处有一些特殊字符。 如果有人遇到类似问题,请让我知道。
<project name="buildscript" default="create-file" basedir=".">
<target name="create-file">
<echo file="powershell.ps1" append="false">
[xml] $xdoc = get-content ${configFolder}\${configFilename};
$currentRelease = $xdoc.config_data.release;
(gc "${configFolder}\${configFilename}") -replace '<${release}>${currentRelease}', '<${release}>${appSettingsNewValue}' | out-file "${configFolder}\${configFilename}"
</echo>
</target>
</project>
我能够找到如下解决方案: [xml] $ xdoc = get-content $ {configFolder} \ $ {configFilename}; $ currentRelease = $ xdoc.config_data.release; (gc“$ {configFolder} \ $ {configFilename}”)-replace('< $ {release} >'+ $ currentRelease),'< $ {release} > $ {appSettingsNewValue}'| out-file“$ {configFolder} \ $ {configFilename}” –