服务器中有多个文件夹,使用域账户进行管理,每个文件夹的权限不同,如何取到所有文件夹的权限并生成到excel中
引用 皆我百晓生 小程序回复内容作答:
要获取共享文件夹的权限并生成到Excel中,可以使用 PowerShell 脚本来实现。以下是一种可能的解决方案:
在服务器上打开 PowerShell 窗口。
使用以下命令获取所有共享文件夹的名称和路径:
$shares = Get-WmiObject -Query "SELECT * FROM Win32_Share"
foreach ($share in $shares) {
$share.Name
$share.Path
}
foreach ($share in $shares) {
$share.Name
$share.Path
$acl = Get-Acl $share.Path
foreach ($access in $acl.Access) {
$access.IdentityReference.Value
$access.FileSystemRights
$access.AccessControlType
}
}
$results = @()
foreach ($share in $shares) {
$shareName = $share.Name
$sharePath = $share.Path
$acl = Get-Acl $sharePath
foreach ($access in $acl.Access) {
$entry = New-Object -TypeName PSObject
$entry | Add-Member -MemberType NoteProperty -Name "ShareName" -Value $shareName
$entry | Add-Member -MemberType NoteProperty -Name "SharePath" -Value $sharePath
$entry | Add-Member -MemberType NoteProperty -Name "IdentityReference" -Value $access.IdentityReference.Value
$entry | Add-Member -MemberType NoteProperty -Name "FileSystemRights" -Value $access.FileSystemRights
$entry | Add-Member -MemberType NoteProperty -Name "AccessControlType" -Value $access.AccessControlType
$results += $entry
}
}
$results | Export-Excel -Path "C:\Path\To\Output.xlsx"
在运行脚本之前,请确保已经安装了 PowerShell 和 ImportExcel
模块。若尚未安装 ImportExcel
模块,可使用以下命令来安装:
Install-Module -Name ImportExcel
通过按照上述步骤操作,你应该能够获取服务器上所有共享文件夹的权限,并将结果生成到 Excel 文件中。