【问题标题】:Trying to write out a variable to a file clears out the variable in powershell尝试将变量写入文件会清除 powershell 中的变量
【发布时间】:2022-07-26 22:15:02
【问题描述】:

我想将它写入一个 powershell 文件:

$key='HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced'

所以我把这行放到一个名为run.ps1的powershell文件中:

"$key='HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced'" | Out-File -FilePath C:\exp.ps1-Append

但是当我运行run.ps1时,这是c:\exp.ps1的内容:

='HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced'

为什么没有写出$key?我试过用两个双引号和单引号括起来,但都不管用。

【问题讨论】:

  • $ 引入了一个变量,双引号允许插入变量值。要在不替换 $key 的情况下生成该字符串,最简单的方法是使用反引号转义 $"`$key='HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced'"
  • 非常简单,效果很好,谢谢!!

标签: powershell variables


【解决方案1】:

为遇到这种情况的人想办法:

$key2 = '$key=HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced'
$key2 | Out-File -FilePath C:\exp.ps1-Append

【讨论】:

  • 请注意,这是一个与原始字符串不同的 字符串,因为它在参数周围缺少单引号。
猜你喜欢
  • 1970-01-01
  • 2022-11-10
  • 2018-05-22
  • 2016-06-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多