Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Как скриптом изменить собственника папки со всем её содержимым?
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Операционные системы
_Anatoliy
Это под Win7, достало уже при переносе проектов с компа на комп приходится менять собственника у каждого файла. А если файлов в папке сотни то задача становится неподъёмной. Как этот процесс автоматизировать? Наверняка должно быть решение.(Заодно было бы неплохо изменить и атрибуты файлов в этой папке для полного доступа).
Daniil
Цитата(_Anatoliy @ Feb 6 2017, 16:02) *
Наверняка должно быть решение.(Заодно было бы неплохо изменить и атрибуты файлов в этой папке для полного доступа).

Не оно?
https://technet.microsoft.com/en-us/library...4(v=ws.11).aspx

Для изменения ACL есть Icacls - https://technet.microsoft.com/en-us/library...5(v=ws.11).aspx
_Anatoliy
Цитата(Daniil @ Feb 6 2017, 12:50) *

Да, это оно,спасибо. Я уже изменил собственность всех файлов командой
Код
takeown /F "d:\Projects_13_1\Calibrator\software\Calibrator_APP" /R /D Y


Пока непонятно как то же проделать с атрибутами,везде описывается как поменять атрибуты одного файла, а не группы.
Кстати, при запуске пакетного файла у меня сразу же закрывается досовское окно, ничего не видно. Команда pause не работает. Как вылечить?

Команда icacls проходит успешно, а атрибуты файлов не изменяются. Что пропустил?
Код
icacls "d:\Projects_13_1\Calibrator\software\Calibrator_BSP" /T /grant:r Anatoliy_1:F


Похоже атрибуты таки сработали, только не отображались новые.
Остаётся вопрос по закрыванию окна при запуске пакетного файла. Вышеописанные команды выполнял в командной строке,не очень удобно.
Lerk
Ну, это из серии lmgify...
Цитата
In Get-Item set patch to couple files or whole folder.

Example:

Get-Item p:\*.txt | foreach {$_.Attributes = 'Normal'}

or if you have many files and folder you may also use Get-ChildItem with param -Recurse to get recursively item.

Get-ChildItem p:\ -Recurse | foreach {$_.Attributes = 'Normal'}

Консоль powershell, в семерке есть. Первое для файлов в папке по маске, второе для всех файлов и для подпапок. Написать в текстовый файлик, потом запускать. Можно еще сверху нарисовать красивый батник, который будет запускать окошко консоли, в котором будет писаться вывод ps скрипта.
_Anatoliy
Цитата(Lerk @ Feb 6 2017, 14:10) *
Ну, это из серии lmgify...

Консоль powershell, в семерке есть. Первое для файлов в папке по маске, второе для всех файлов и для подпапок. Написать в текстовый файлик, потом запускать. Можно еще сверху нарисовать красивый батник, который будет запускать окошко консоли, в котором будет писаться вывод ps скрипта.

Спасибо!
Остаётся вопрос по закрыванию окна при запуске пакетного файла.
Код
Кстати, при запуске батника у меня сразу же закрывается досовское окно, ничего не видно. Команда pause не работает. Как вылечить? Чтобы после выполнения скрипта окно оставалось открытым.
_Anatoliy
Разобрался и с закрытием окна. Всем спасибо за участие.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.