IT Knowledge Base

~ Without sacrifice, there can be no victory ~

發佈日期:

如何利用PowerShell指令‧一次性取得網絡磁碟內資料夾的拒絕存取權限

01. 前幾天幫同事整好了網絡磁碟(Network drive)上資料夾的權限的存取列表。但究竟那些資料夾沒有存取權限呢?至少也要知道,再決定如何處理。

Get-ChildItem -path "folder_path" -Recurse -ErrorAction SilentlyContinue -ErrorVariable gci_errors | where{$_.PSIsContainer -eq $true}
$gci_errors | Select-Object -ExpandProperty CategoryInfo | select-object -Property Category, Reason, TargetName | export-csv -NoTypeInformation "outfile.csv"

02. 既然資料夾沒有存取權限,那內裡的檔案當然是看不到有沒有存取權限。但假若設定是資料夾有存取權限,只是某些檔案沒有存取權限。那我們就需要另一個Script。

Get-ChildItem -path "folder_path" -Recurse -ErrorAction SilentlyContinue -ErrorVariable gci_errors | ForEach-Object {
$_ | Get-Acl -ErrorAction SilentlyContinue -ErrorVariable gacl_errors
}
$gci_errors | Select-Object -ExpandProperty CategoryInfo | select-object -Property Category, Reason, TargetName | export-csv -NoTypeInformation "gcifile.csv"
$gacl_errors | Select-Object -ExpandProperty CategoryInfo | select-object -Property Category, Reason, TargetName | export-csv -NoTypeInformation "gaclfile.csv"

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *