将内容添加到txt

时间:2018-06-11 08:45:37

标签: powershell text-files

我试图创建一个GUI,将文本框中的信息打印成.txt,我会尽力解释。

$TextBox_UsbName.text = "TestingTesting"

$Button_SetUsbName.Add_Click({ $Value_UsbName = $TextBox_UsbName.text; add-content -path $Value_NewScriptPath -value "$usbname  = $Value_UsbName" })

运行之后我希望文本文件包含这个:

$usbname = "TestingTesting"

我仍然是Powershell的新手以及一般的编码,现在我真的被卡住了,我尝试了很多不同的方法。

非常感谢任何想法和帮助。

编辑:我的结果是

= 

1 个答案:

答案 0 :(得分:0)

在Powershell双引号字符串文字中,每次出现未转义的$时,都会发生字符串插值,并在其后面显示有效的标识符字符。要引入不应作为插值变量的一部分进行解析的文字$,您应该使用反引号 ` 对其进行转义。

以下是some quick string interpolation help

  

如何在字符串中展开表达式?
  Windows PowerShell将在字符串中展开变量或表达式。
  变量看起来像:$variable
  表达式如下:$(expression)

因此,您的"$usbname = $Value_UsbName"被引擎解释为$usbname变量的值跟随空格的=,然后一个值$Value_UsbName变量

您想要添加的是文字$usbname子字符串和$TextBox_UsbName.text表达式的值。

所以,要么使用

"`$usbname = $($TextBox_UsbName.text)"

或者只是连接值(以独立于文化的方式):

$usbname + ' = ' + $TextBox_UsbName.text