Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Вывод информации по шарам (http://forum.oszone.net/showthread.php?t=348595)

ejik_off 21-04-2021 11:09 2956127

Вывод информации по шарам
 
Всем привет!
есть скрипт
Код:

Get-Share {
    $shares = gwmi Win32_Share -ComputerName $computer -Filter "type = 0"
   
    $ShareInfo = @()
    foreach ($share in $shares) {
        $ShareSec = gwmi Win32_LogicalShareSecuritySetting -ComputerName $computer -filter "name='$($share.name)'"
        if ($shareSec) {
            $SD = $sharesec.GetSecurityDescriptor()
            $ShareInfo += $SD.Descriptor.DACL | % {
                $_ | select @{e={$share.ClassPath.Server};n='Computer'},
                @{e={$share.name};n='Name'},
                @{e={$share.Path};n='Path'},
                @{e={$share.Description};n='Description'},
                AccessMask,
                AceFlags,
                AceType,
                @{e={$_.trustee.Name};n='User'},
                @{e={$_.trustee.Domain};n='Domain'},
                @{e={$_.trustee.SIDString};n='SID'}
            }
        } else {
            Write-Warning "Specified share not exist or you may not have sufficient rights to access them!"
        }
    }
    $ShareInfo
}

Цитата:

Computer : wks-10
Name : shares$
Path : C:\shares
Description :
AccessMask : 1245631
AceFlags : 0
AceType : 0
User : Все
Domain :
SID : S-1-1-0

Нужно в выводе поменять значение AccessMask с числового значение на текстовое пробовал так
@{e={if(AccessMask -eq 1245631) {"Change"}};n="Permision"},
но ничего не выходит. Подскажите как правильно?

DJ Mogarych 21-04-2021 15:05 2956149

Код:

invoke-command -computername $computer -command {get-smbshare |get-smbshareaccess}


Время: 22:23.

Время: 22:23.
© OSzone.net 2001-