我的目标是运行一个PowerShell命令,该命令将更新markdown表中的文本。
我的项目结构看起来像:
/根
dashboardTable.md
替换.ps1
dashboardTable.md:
App Name | Build Version | QA Version | Prod Version
------ | ------ | ------ | ------ |
ProjectName |0.0.0 | 0.0.0 | 0.0.0
替换.ps1
(Get-Content ./dashboardTable.md).replace('0.0.0', '0.0.1') | Set-Content './dashboardTable.md'
运行此命令有效,并将标记文件更改为:
App Name | Build Version | QA Version | Prod Version
------ | ------ | ------ | ------ |
ProjectName |0.0.1 | 0.0.1 | 0.0.1
我正在尝试设置一个变量,该变量可以用来代替替换方法中的硬编码值,例如:
$MyVariable = '0.0.0'
(Get-Content ./dashboardTable.md).replace($MyVariable, '0.0.1') | Set-Content './dashboardTable.md'
但这将我的降价文件更改为:
App Name | Build Version | QA Version | Prod Version
------ | ------ | ------ | ------ |
0.0.1 |0.0.0 | 0.0.0 | 0.0.0
我甚至尝试切换替换值,并运行PowerShell命令,如:
$MyVariable = '0.0.1'
(Get-Content ./dashboardTable.md).replace('0.0.0', $MyVariable) | Set-Content './dashboardTable.md'
它将降价改为:
App Name | Build Version | QA Version | Prod Version
------ | ------ | ------ | ------ |
ProjectName |ProjectName | ProjectName | ProjectName
有可能使用这样的变量吗?
我不确定为什么我会得到我得到的结果,但是,我知道在调用PowerShell脚本时出现了问题。
为了解决此问题,当我想运行脚本时,我在PowerShell集成终端中运行以下命令:CCD_ 1,并能得到预期的结果。