带变量的添加内容字符串引号

时间:2017-09-05 20:25:38

标签: powershell

我想在我创建的文本文件中添加一行,但是它需要包含变量周围的文本引号。

我正在使用的一个例子:

    $wksname="wks12345"
    $path = c:\scripts\file.txt

    Add-Content $path '"DefaultUsername" =' "$wksname"

我收到一条错误,指出找不到位置参数。

我希望输出在文本文件中看起来像是:  “DefaultUsername”=“wks12345”

有什么想法吗?

谢谢!

3 个答案:

答案 0 :(得分:1)

你的字符串引用是错误的。这是你的命令:

Add-Content $path '"DefaultUsername" =' "$wksname"

您有三个参数:

$path
'"DefaultUsername" =' 
"$wksname"

Add-Content只有2个位置参数(-Path-Value)。 PowerShell无法找到要使用的第三个参数。

如果您需要在字符串中使用双引号,并且还想在字符串中展开变量,则需要转义双引号。有两种方法可以做到。

像这样:

Add-Content -Path $path -Value """DefaultUsername"" = ""$wksname"""

或者这个:

Add-Content -Path $path -Value "`"DefaultUsername`" = `"$wksname`""

答案 1 :(得分:1)

使用两个连续的Add-Content $path """DefaultUsername"" = ""$wksname""" 作为转义序列:

template.setSessionTransacted(true).

答案 2 :(得分:1)

使用转义字符`

$wksname="wks12345"
$path = "c:\scripts\file.txt"
Add-Content -Path $path -Value "`"DefaultUsername`" = `"$wksname`""

会写出" DefaultUsername" =" TEST123"

至于命令,它应该是

RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_URI} !-f 
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_URI} !-d 
RewriteCond %{REQUEST_URI} ^(/?)([REFNCSrefncs]{10})/([a-zA-Z0-9]{6})(/?)$
RewriteRule ^(.*)$ example.com/rewrite.php?rewrite=example.com%{REQUEST_URI}   [QSA,L,NC,R=302]

RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_URI} !-f
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_URI} !-d
RewriteCond %{REQUEST_URI} ^(/?)([REFNCrefnc]{9})/([a-zA-Z0-9]{6})(/?)$
RewriteRule ^(.*)$ example.com/rewrite.php?rewrite=example.com%{REQUEST_URI}  [QSA,L,NC,R=302]