只是一个简单的问题。我正在运行像
这样的代码行$publicIP = Get-Content (Get-AzureVM -ServiceName $servicename -Name $vmsname | Get-AzureEndpoint | Select { $._vip })
$OSDisk = Get-Content (Get-AzureVM -ServiceName $servicename -Name $vmsname | Get-AzureOSDisk)
它确实为我提供了IPAddress或变量,但在尝试将值放入csv单元格时,它失败了。我认为这是因为它试图添加额外的标签,但我不知道如何只获取字符串并将变量设置为那样。有谁知道如何解决这个问题?
编辑:
如果输出为:
Get-AzureVM -servicename "vm1" -name "vm1" | Select DNSName | Out-String
是这样的:
DNSName
-------
http://example.cloudapp.net/
如何将“http://example.cloudapp.net/”作为CSV条目输入?现在它正试图将所有代码块放入CSV中,这给了我糟糕的格式错误。
答案 0 :(得分:0)
Select
是Select-Object
的别名,允许您从对象中获取一个或多个属性,并使用它们创建新对象。
如果要将属性扩展为该值,请使用-ExpandProperty
参数:
Get-AzureVM -servicename "vm1" -name "vm1" | Select -ExpandProperty DNSName
应该只给你http://example.cloudapp.net/
此外,当您要将数据发送到CSV时,可以将对象传递给cmdlet Export-CSV
,它将使用属性名称作为标题,将数组中的对象用作行,将属性用作列。< / p>
示例:
Get-ChildItem -File | Select Name, Size | Export-Csv c:\temp\filelist.csv