【发布时间】:2017-06-04 18:30:36
【问题描述】:
我有一个非常简单但令人愤怒的 PowerShell 问题。我正在尝试从字符串中删除换行符。我有以下代码:
param(
[parameter(mandatory=$false)]$Dmn = [System.DirectoryServices.ActiveDirectory.Domain]::GetCurrentDomain()
)
function getPDC{
$Domain = $Dmn.Name.Split('.')[0]
$PDC = (nltest /dcname:$Domain).Replace("PDC for Domain ","").Replace($Domain, "").Replace(" is \\","").Replace("The command completed successfully","").Replace("`n","")
$PDC + "hodor"
}
如果它可以按照我的理解工作,应该返回
PDCVALUEhodor
但它反而返回:
PDCVALUE
hodor
我在这里犯了什么愚蠢的错误?
我尝试将 $PDC 转换为这样的字符串:
[String]$PDC = [String](nltest /dcname:$Domain).Replace("PDC for Domain ","").Replace($Domain, "").Replace(" is \\","").Replace("The command completed successfully","").Replace(" ", "")
换行符消失了(奇怪!),给我
PDCVALUE hodor
这更接近我想要的,但我似乎无法删除那个空间。我尝试在字符串上调用Replace(" ", "") 和Trim(),两者都不起作用。
【问题讨论】:
标签: powershell newline