Not able to help you with your specific question but have you tried www.Powershell.com<http://www.Powershell.com> ?
John W. Cook Director of Network Operations Partnership For Strong Families 5950 NW 1st Place Gainesville, Fl 32607 Office (352) 244-1610 Cell (352) 215-6944 MCSE, MCP+I, MCTS, CompTIA A+, N+, Security+ VSP4, VTSP4 From: [email protected] [mailto:[email protected]] On Behalf Of Kuhlman, Donald Sent: Tuesday, March 25, 2014 1:01 PM To: [email protected] Subject: [NTSysADM] Powershell Tip using get-ace for a share permission * Hi folks. Long time no post...I'm on a new gig and re-subscribed using the email address from here. * I can't find the Powershell info for the IT-Forum groups so I didn't post there yet. I've been googling and checking other sources also, but can't seem to get this to work with what I've found. * Anyway, I'm working on a script to pull a server inventory including shares, share permissions, and other entries and any tip on what may work better or instead of would be really appreciated. I'm able to retrieve the share and ace entries, but when I try to write them to an excel sheet, they aren't coming over with the human readable value like "Read and execute". I can output the info to the screen. I've tried to use a Switch command like this but it doesn't work - # Switch($UniqueShare.AccessRights) # { # 1179817 {$Sheet1.Cells.Item($intRowShare, 7) = "ReadAndExecute"} # } Below is a code snip showing what I'm doing: $strComputer = read-host "Enter computer name " $strComputerDelim = "\\" + $strComputer $sharelist = get-wmiobject win32_share -ComputerName $strComputer foreach ($share in $sharelist) { $ShareAceName = $strComputerDelim + "\" + $share.Name $ShareAceDetails = get-ace -path $ShareAceName foreach ($ShareAce in $ShareAceDetails) { foreach ($UniqueShare in $ShareAce) { #Populate Shares Sheet (This is only a code snippet) write-host $UniqueShare.AccessRights $Sheet1.Cells.Item($intRowShare, 7) = $UniqueShare.AccessRights $Sheet1.Cells.Item($intRowShare, 8) = $ShareAceDetails.AccessControlType $intRowShare = $intRowShare + 1 } } $intRowShare = $intRowShare + 1 } Results on screen are like this for the Permissions: ReadAndExecute, Synchronize FullControl ReadAndExecute, Synchronize ReadAndExecute, Synchronize GenericExecute, GenericRead ReadAndExecute, Synchronize Results in the sheet are like this: Permission 1179817 Thanks, Don K

