你好,Stackoverflow专家
我刚开始在这个网站,所以希望赢得一些荣誉,回答问题,以及只问问题,可以帮助这个可怕的知识库,即Stackoverflow社区。
我的Powershell技能每天都在增长,但是我很难理解为什么这样做不起作用。
我想从pscustomobject的记事本属性中保存的名称列表中创建一组新对象。
PS G:\Team Drives\Projects\AWS-PowerShell\AWS_ADS_DataMiner> $ADSObjectNames
ObjectName CSV
---------- ---
Process 580501780015_Process.csv
Applications 580501780015_Applications.csv
ApplicationResourceAssociation 580501780015_ApplicationResourceAssociation.csv
NetworkInterface 580501780015_NetworkInterface.csv
SystemPerformance 580501780015_SystemPerformance.csv
Tags 580501780015_Tags.csv
Connection 580501780015_Connection.csv
Server 580501780015_Server.csv
PS G:\Team Drives\Projects\AWS-PowerShell\AWS_ADS_DataMiner> $ADSObjectNames | Select-Object -Property ObjectName | ForEach-Object {$_.objectname = New-Object -TypeName pscustomobject}
PS G:\Team Drives\Projects\AWS-PowerShell\AWS_ADS_DataMiner> Get-Variable | Where-Object {$_.Name -eq 'Process'}
PS G:\Team Drives\Projects\AWS-PowerShell\AWS_ADS_DataMiner> Get-Variable | Where-Object {$_.Name -eq 'Server'}
PS G:\Team Drives\Projects\AWS-PowerShell\AWS_ADS_DataMiner>$ADSObjectNames分类如下:
PS G:\Team Drives\Projects\AWS-PowerShell\AWS_ADS_DataMiner> $ADSObjectNames | gm
TypeName: System.Management.Automation.PSCustomObject
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
CSV NoteProperty string CSV=580501780015_Process.csv
ObjectName NoteProperty string ObjectName=Process
PS G:\Team Drives\Projects\AWS-PowerShell\AWS_ADS_DataMiner> 如能从您的经验和知识中获得任何见解,将不胜感激。
谢谢斯塔克沃夫的佩普斯
斯图尔特
发布于 2017-07-21 08:44:02
New-Object和New-Variable搞混了。New-Object不会为您创建变量;它的语法更像$newVar = New-Object ...。New-Object with -TypeName创建一个空对象,New-Variable带-Name创建一个空变量,-ArgumentList和-Value重新允许您在其中存储内容。https://stackoverflow.com/questions/45231660
复制相似问题