我正在编写一个新脚本,从长远来看,为了让事情变得更容易,我需要将所有内容手动放入表单中以进行跟踪。现在我喜欢这个列表大部分都是干净的,但我想要以下内容。
我跑步:
$PrL = (Get-CimInstance -Class CIM_Printer).Name | Sort-Object
结果:
Printer01
Printer02
Printer03
Printer04
我试图实现的输出:
Printer01; Printer02; Printer03; Printer04
我设法要么放;在每一行的末尾或将每个条目一个接一个地写入。
当然我可以使用Notepad++并替换“ “ 和 ”; “但这需要更多时间。我希望能够自动化执行此操作,但到目前为止我只能得到一个又一个。
这里有一些尝试。
尝试1:
$PrL = (Get-CimInstance -Class CIM_Printer).Name | Sort-Object
$PrL2 = ForEach-Object { $PrL -replace '\r', ' '}
尝试2:
$PrL = (Get-CimInstance -Class CIM_Printer).Name | Sort-Object
$PrL2 = $PrL | ForEach { $_ + "; " }
$PrL2 | ForEach { $_ -replace '\r', ' '}
尝试3:
$PrL = (Get-CimInstance -Class CIM_Printer).Name | Sort-Object
$PrL | ForEach-Object { $_ -replace '\n', " "}
我什至不知道是否 或 +r 或 `r 或其他完全必需的东西,我基本上尝试复制粘贴人们尝试过的一些东西,但这些只能部分工作或根本不起作用。
当前 PowerShell 版本:5.1.19041.3930 操作系统:Windows 10 专业版
使用模式
\r?\n
来代替 - 通过用 \r
标记 ?
可选,它将匹配 CRLF 和 LF 样式的行结尾:
(Get-CimInstance -Class CIM_Printer).Name -replace '\r?\n',' '