0

誰かが私を助けてくれることを願っています。私は PowerShell にかなり慣れていないため、既存のコードを調べて変更することを除いて、実際に自分でスクリプトを作成することはできません。

特定の共有のファイル共有アクセス許可を報告し、サブフォルダーを再帰的にアクセス許可を返す PowerShell スクリプトを見つけました。

私の問題は、多くの共有でこれを行う必要があるため、スクリプトに共有名を含むテキスト ファイルを提供できるようにしたいということです。for each ループを実行して、テキスト ファイル内の共有の名前を配列に読み込む必要があることはわかっていますが、その方法がわかりません。経験のある人にとってはかなり簡単だと思います。

これは、単一のエントリで使用したスクリプトです。

http://mywinsysadm.wordpress.com/2011/08/17/powershell-reporting-ntfs-permissions-of-windows-file-shares/

#Set variables
$path = Read-Host "Enter the path you wish to check"
$filename = Read-Host "Enter Output File Name"
$date = Get-Date

#Place Headers on out-put file
$list = "Permissions for directories in: $Path"
$list | format-table | Out-File "C:\scripts\$filename"
$datelist = "Report Run Time: $date"
$datelist | format-table | Out-File -append "C:\scripts\$filename"
$spacelist = " "
$spacelist | format-table | Out-File -append "C:\scripts\$filename"

#Populate Folders & Files Array
[Array] $files = Get-ChildItem -path $path -force -recurse

#Process data in array
ForEach ($file in [Array] $files)
{
#Convert Powershell Provider Folder Path to standard folder path
$PSPath = (Convert-Path $file.pspath)
$list = ("Path: $PSPath")
$list | format-table | Out-File -append "C:\scripts\$filename"

Get-Acl -path $PSPath | Format-List -property AccessToString | Out-File -append "C:\scripts\$filename"

} #end ForEach

ノブの質問で申し訳ありません。もう少し時間があればもっと学ぶ予定ですが、今すぐ助けていただければ幸いです。

前もって感謝します。

4

1 に答える 1