所有権を引き継ぎ、set-aclをフォルダにすることはできますか?私はフォルダの場所を持っているfolders.txtファイルを持っています。例についてはPowershellがset-aclより前のフォルダの所有権を持っています
:
D:\Dept\CC\NorthRiver\16-17\StaffAdministration
は、その後、私は前年のフォルダ構造の新しい年を作成し、フォルダに一致する新しいフォルダ年に前の年のフォルダの権限と許可をコピーしています。私は問題に遭遇しましたが、フォルダの所有権のためです。私が所有者でない場合、特定のフォルダのアクセス許可を複製することができず、私はSet-ACL : The security identifier is not allowed to be the owner of this object.
を受け取ることができますか?
私は(私に所有者を変更するが、それはどちらか動作しませんでした)行を追加してみました:
get-item $currentFolder.Replace("16-17", "15-16") | set-owner -Account 'VDB-TST1\Administrators'
誰もが、私はこれを実現できるかのいずれかのアイデアを持っていますか? これは私が持っている完全なスクリプトです:PowerShellのにネイティブのSet-ACLコマンドレットはかなりひどいです
Function Get-FileName{
[CmdletBinding()]
Param(
[String]$Filter = "|*.*",
[String]$InitialDirectory = "C:\")
[void][System.Reflection.Assembly]::LoadWithPartialName("System.windows.forms")
$OpenFileDialog = New-Object System.Windows.Forms.OpenFileDialog
$OpenFileDialog.initialDirectory = $InitialDirectory
$OpenFileDialog.filter = $Filter
[void]$OpenFileDialog.ShowDialog()
$OpenFileDialog.filename
}
#Get and Set the ACL to the new years folder structure
foreach ($currentFolder in (GC (Get-FileName -InitialDirectory $env:USERPROFILE\Desktop -Filter "Text files (*.txt)|*.txt|All files (*.*)|*.*"))) {
md $currentFolder # Create Folder
get-item $currentFolder.Replace("16-17", "15-16") | set-owner -Account 'VDB-TST1\Administrators'
Get-ACL $currentFolder.Replace("16-17", "15-16") | Set-ACL $currentFolder
}
これは、作成しているため、新しいフォルダを同じ所有者に保つことはできません。私は同じ所有者を維持したい場合は好奇心のちょうどまたこれも可能でしょうか? –
これは、NTFSファイルのアクセス許可のみを設定しています。 robocopyは権限を設定するだけで、実際にはファイルやフォルダをコピーしません。 Powershellでフォルダの所有者を設定したい場合は、takeown.exeか、[Boe Proxが作成したより洗練されたソリューション](https://learn-powershell.net/2014/06/24/changing)を参照する必要があります。 -ownership-of-file-or-folder-using-powershell /)を使用します。 – StephenP