从文件内容中删除“

从文件内容中删除“

我正在使用 powershell 查询加入域的计算机列表,如下所示:

dsquery.exe computer > "C:\testfolder\host.txt"

输出按预期工作,但如下所示:

"CN=WIN-20CCF3DC8D,OU=Domain Controllers,DC=hosting,DC=xyz,DC=com"
"CN=WIN-20XYS8CM7D,OU=Computers,DC=hosting,DC=xyz,DC=com"

这里我需要做以下事情。

任何一个:

我需要编辑此文件(使用 powershell):删除所有字符,删除所有 OU 不等于计算机的条目。

或者

我需要将 CN 的内容转换为字符串,但没有

尝试过使用

$contents = Get-Content C:\testfolder\host.txt | Foreach-Object {$_ -replace '"', ""}

但似乎不起作用。有人能帮我吗?

答案1

这应该有效:

$contents = Get-Content C:\testfolder\host.txt | where { $_ -match "OU=Computers" } | Foreach-Object {$_ -replace '"', ""}

然后echo $contents给出:

CN=WIN-20XYS8CM7D,OU=Computers,DC=hosting,DC=xyz,DC=com

这将仅返回包含双引号的行OU=Computers并从这些行中删除双引号。

相关内容