Write-Host
cmdlet工作正常,但当我尝试传递给Out-File
时,它会抛出错误。
意外令牌' accessRule'在表达或陈述中。
foreach($accessRule in $acl.Access)
{
Write-Host $accessRule.IdentityReference $accessRule.FileSystemRights
$accessRule.IdentityReference $accessRule.FileSystemRights| Out-File -Encoding Ascii -append $Report
}
答案 0 :(得分:1)
那是因为Write-Host
只接受输出之后的所有参数。首先将输出转换为一个字符串,然后再将其发送到Out-File:
foreach($accessRule in $acl.Access) {
Write-Host $accessRule.IdentityReference $accessRule.FileSystemRights
"$($accessRule.IdentityReference) $($accessRule.FileSystemRights)"|
Out-File -Encoding Ascii -append $Report
}