无法让Powershell拉出$ StrComputer.name

n00*_*00b 2 arrays powershell attributes

我正在编写一个脚本让Powershell在PC上查询文件夹,然后在Excel电子表格中输入一些文本(如果该文件夹存在).一切正常,除了我无法获取$ path变量从$ StrComputer变量中提取name属性.

$HELLO = Get-QADComputer -SearchRoot "%OU%" -LdapFilter "(Name=COMPUTERNAME)" -IncludedProperties pwdLastSet -SizeLimit 0 | select-object name, pwdLastSet, SamAccountName, lastLogonTimestamp

foreach ($strComputer in $HELLO)
{
$path = null
$path = "\\$strComputer.name\c$\Program Files\folder"
    If((Test-Path -Path $path) -eq $true) 
        { 
        $c.Cells.Item($intRow, 15) = ("folder")
        }
}
Run Code Online (Sandbox Code Playgroud)

当我在"If((Test-Path -Path $ path)-eq $ true)"上切换断点并将鼠标悬停在$ path上时,我将返回完整的数组:$ path = \(@ {name = COMPUTERNAME; pwdLastSet = 01/31/2014 11:09:20; SamAccountName = COMPUTERNAME $; lastLogonTimestamp =}.name)\ c $\Program Files\Folder

如何从数组中提取name属性并正确插入以获取$ path =\COMPUTERNAME\c $\Program Files\Folder?

提前致谢!

kem*_*002 6

更改此$ strComputer.name

到这个$($ strComputer.name)

当你用双引号括起一个变量时,除非你用$()包围它,否则它不会拿起属性来交换它.