-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}」 –