Powershell添加内容截断输出

时间:2012-10-25 18:31:42

标签: xml powershell truncation output

我在PowerShell脚本中使用Add-Content cmdlet将foreach循环中的匹配写入单独的文本文件。为此,我使用以下代码:

Add-Content -Path $varListNotFound $match

$varListNotFound包含文件名和路径,而$match是foreach循环中与我的项目范围内匹配的变量。

我不确定它是否有所作为,但我匹配的匹配项是从XML文档中提取的。

在输出文本文件中,除非名称很长,否则在我的XML文件的<name></name>节点中找到的匹配项将正确输出。当名称太长时,它会将名称截断为76个字符并在其后添加三个句点。这导致了我正在使用的这行代码清除未使用的项目的问题:

$xml.rhpml.variables.variable | ? { $varRemove -contains $_.name } | % {$xml.rhpml.variables.RemoveChild($_)}

我已添加到我的脚本中,以便我可以从截断的末尾删除省略号,但不会从XML文档中删除截断的名称。

有没有办法延长添加内容的长度?或者有没有办法让上面的XML代码不排除截断的名称?

我尝试将$varRemove -contains $_.name更改为$varRemove -like$_.name,但它没有从XML中删除节点。

1 个答案:

答案 0 :(得分:2)

尝试使用Out-File cmdlet而不是Add-Content,并指定Append和Width属性。