【发布时间】:2016-01-09 21:15:11
【问题描述】:
下午好
我是 Powershell 的新手,所以请原谅我的无知。
我正在尝试在文本文档中的服务器路径列表上运行 Get-ACL,以便获得具有权限的 AD 帐户/组列表以及每个文件夹路径的权限级别。然后我需要它来将此信息导出到 CSV 或文本文件中。我在这里运行了大量脚本并尝试调整它们以满足我的特定需求,但我仍然遇到问题。我目前正在尝试调整这个,但我不确定我哪里出错了;
$FullList = Get-Content "C:\ShareList.txt"
$DataOutFile = "C:\PermissionInformation.txt"
Foreach ($Folder in $FullList)
{
$ACLs = get-acl $Folder | ForEach-Object { $_.Access }
Foreach ($ACL in $ACLs)
{
$DataOutInfo = $Folder.FullName + ":" + $ACL.IdentityReference
Add-Content -Value $DataOutInfo -Path $DataOutFile
}
}
源列表“ShareList.txt”格式如下;
\\phttest\Testing$\Test1
\\phttest\Testing$\Test2
\\phttest\Testing$\Test3
脚本运行并且似乎没有出错,但是当我检查输出文件时没有输入任何内容,它完全是空的。
我还尝试了一个使用 CSV 的更简单的变体;
源文件为 ShareList.csv
Folder,
\\phttest\Testing$\Test1
\\phttest\Testing$\Test2
\\phttest\Testing$\Test3
脚本;
$FilePath = "C:\ShareList.csv"
$List = Import-CSV $FilePath
foreach($Folder in $List)
{
Get-ACL $Folder | ForEach-Object
}
我收到以下消息: 命令管道位置 2 处的 cmdlet ForEach-Object 为以下参数提供值: 进程[0]:
我一直在尝试为科学怪人编写一个工作脚本,但到目前为止,我似乎在兜圈子,任何帮助将不胜感激。
山姆
【问题讨论】:
标签: powershell csv import export