【问题标题】:Formatting variable with 2 outputs具有 2 个输出的格式化变量
【发布时间】:2017-01-12 20:07:50
【问题描述】:

代码:

$adgroups = Get-ADPrincipalGroupMembership $tag$ | select -ExpandProperty Name | Sort | Select-String "iSite"

输出:

DFSR 托管 iSite Enterprise 4.4.542.2 WSA_Rad_A

DFSR 托管 iSite 放射学 4.4.516.27 WSA_Rad_A

基本上一个命令会生成两个项目(使用$variable | out-file C:\file.txt -Append 输出),当我在 excel 中打开这些项目时,它们的格式如下:

DFSR 托管 iSite Enterprise 4.4.542.2 WSA_Rad_A DFSR 托管 iSite Radiology 4.4.516.27 WSA_Rad_A

有没有办法打破它 // 在每个项目之后添加一个新行但仍然将它们都保留在一个变量中?

【问题讨论】:

  • 你的输出怎么样?
  • 使用$variable | out-file C:\file.txt -Append输出,如果可能的话,我想保持相同的输出方法。
  • 它对我有用。尝试使用 Add-Content cmdlet

标签: powershell variables output newline


【解决方案1】:
Get-ADPrincipalGroupMembership $tag$ | select -ExpandProperty Name | Sort | Select-String "iSite" | ConvertTo-Csv -NoTypeInformation | Out-File C~\Desktop\Sites.csv

【讨论】:

    【解决方案2】:

    我会稍微打破你的要求。

    首先,您使用的是Select -Expand,它将丢弃所有属性,只返回每个对象名称的值。这是一个问题,因为当您将其导出为 CSV 时,您将没有标题。我认为缺少标题最终会导致您在这里面临的问题。

    试试这个:

    $adgroups = Get-ADPrincipalGroupMembership $tag$ | Where Name -like "*iSite*" | 
      select Name | Export-Csv c:\pathto\YourCsv.Csv
    

    最后,我不认为 Select-String 对您有任何帮助。您可以改用 -like 运算符。

    【讨论】:

    • 我正在导出到一个 .txt 文件并在最后添加我自己的标题,因为我有不止一个变量。有没有办法让 var 中包含两个项目并在它们之间插入换行符?这是我的目标。
    • 不知何故你用这个其他代码引入了这个问题。 PowerShell 本身添加了换行符,它可以正常工作。你如何分享你的完整代码?也许我们可以找到串联的来源。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多