Есть ли пакетный файл, командная строка или powershell, который назначит владение файлом кому угодно? - PullRequest
0 голосов
/ 17 апреля 2019

Повтор заголовка: есть ли пакетный файл, командная строка или powershell, который назначит владение файлом кому угодно?Я развертывал новые ПК в начале развертывания.Машины настраиваются для разных групп по одной партии за раз.Мне нужен пакет, команда или PowerShell, чтобы назначить владельца для определенных папок.Я пробовал несколько разных командных файлов, но безрезультатно.Я использую это:

takeown /f "c:\program files" /r /d y

все работает отлично.Затем я пытаюсь это:

icacls "c:\program files" /setowner "LocalAdmin"

но ничего не происходит.Я не против использования любого из 3 (.bat, cmd или ps).Мне просто нужно что-то простое, что работает.Я полагаю, что это место, чтобы спросить.Вы, ребята, много раз помогали мне, отвечая на другие вопросы людей.Я всегда благодарен.

1 Ответ

1 голос
/ 17 апреля 2019

Вы можете указать владельца файла с помощью командлетов Get-Acl и Set-Acl. Например, вот как назначить владельца для локальной группы «Администраторы»:

# Get the 'Administrators' identity
$adminGroup = New-Object System.Security.Principal.NTAccount('Administrators')

# Get the existing ACL for the file
$fileACL = Get-Acl -Path "C:\TargetFile.txt"

# Set the new owner in the ACL - inmemory only
$fileACL.SetOwner($adminGroup)

# Write updated ACL back to file
Set-Acl -Path "C:\TargetFile.txt" -AclObject $fileACL
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...