当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] Active Directory:列出所有 Windows 服务器的所有网络共享

作者:精品下载站 日期:2024-12-14 07:38:39 浏览:13 分类:玩电脑

Active Directory:列出所有 Windows 服务器的所有网络共享


在今天的博客文章中,我展示了如何从 Active Directory 域中的所有服务器检索所有网络共享,以在输出中获得一个不错的列表。该脚本用于记录您的 Active Directory 环境。让我们开始吧。

按名称检索所有服务器

首先,我们需要检索服务器名称。

# Retrieve Server Names 
$server = Get-ADComputer -Filter 'operatingsystem -like "*server*"' | Select-Object -ExpandProperty Name

简短的评论。

[玩转系统] Active Directory:列出所有 Windows 服务器的所有网络共享

伟大的!

检索所有服务器的所有共享名

现在聚会开始了。由于我们拥有所有服务器名称,因此我们可以使用 Invoke-Command 和 Get-SmbShare 来检索所有共享。

# Collection Point 
$result = @()

# Show all Shares of all Servers
foreach ($s in $server) {
    $shares = Invoke-Command -ComputerName $s -ScriptBlock {Get-SmbShare | Select-Object PSComputerName,Name,Path} 
    $result += New-Object PSObject -Property ([ordered]@{ 
        ServerName  = $s
        Shares      = $shares.Name -join "`n"
        Path        = $shares.Path -join "`n"
    })
}
Write-Output $result | Format-Table -AutoSize -Wrap

[玩转系统] Active Directory:列出所有 Windows 服务器的所有网络共享

希望这有帮助。祝你今天过得愉快。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯