|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Автоматизация создания папок и раздача прав доступа NTFS |
|
CMD/BAT - Автоматизация создания папок и раздача прав доступа NTFS
|
Новый участник Сообщения: 25 |
Всем добрый вечер. Есть необходимость создать на нескольких флешках и жестких дисках одинаковые папки с одинаковыми правами.
Для этого я попытался написать скрипт, и вроде написал. Он работает, но я столкнулся с некоторыми для меня трудностями. При запуске готового батника от имени администратора (правой кнопкой мыши по файлу) все операции проводятся не с текущей папкой а с папкой системы C:\Windows\system32 Права администратора мне нужны для того, чтобы сменить владельца с большинства папок с текущего пользователя на группу администраторов. Сам я не особо в скриптах, но учиться не боюсь Буду рад помощи от знатоков форума. Вот сам код: @echo off rem создание переменных set Sid1=Мой Sid set Name1=Имя моего пользователя rem установка прав доступа NTFS на корневую директорию rem ВНИМАНИЕ!!! НЕ запускать из системных папок!!! icacls %CD% /inheritance:r icacls %CD% /grant *%Sid1%:(OI)(CI)(M,RX,D,WDAC,WO) /T /C /L /Q icacls %CD% /grant Администраторы:(OI)(CI)(M,RX,D,WDAC,WO) /T /C /L /Q icacls %CD% /grant Пользователи:(OI)(CI)RX /T /C /L /Q icacls %CD% /grant Все:(OI)(CI)RX /T /C /L /Q rem создание папки %CD%\Users: if exist %CD%\Users goto er1_Users mkdir %CD%\Users rem Установка прав доступа NTFS для папки %CD%\Users icacls %CD%\Users /inheritance:r icacls %CD%\Users /grant *%Sid1%:(OI)(M,RX,D,WDAC,WO) /T /C /L /Q icacls %CD%\Users /grant Администраторы:(OI)(CI)(M,RX,D,WDAC,WO) /T /C /L /Q icacls %CD%\Users /grant Пользователи:(OI)(CI)RX /T /C /L /Q icacls %CD%\Users /grant Все:(OI)(CI)RX /T /C /L /Q rem создание файла desktop.ini @echo.> %CD%\Users\desktop.ini @echo [.ShellClassInfo]>> %CD%\Users\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21813>> %CD%\Users\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Users\desktop.ini attrib +r %CD%\Users echo DONE :createpublic if exist %CD%\Users\Public goto er1_public rem создание папки Public в папке Users: mkdir %CD%\Users\Public rem Установка прав доступа NTFS для папки Public из папки Users icacls %CD%\Users\Public /inheritance:r icacls %CD%\Users\Public /grant *%Sid1%:(OI)(CI)(M,RX,D,WDAC,WO) /T /C /L /Q icacls %CD%\Users\Public /grant Администраторы:RX /T /C /L /Q icacls %CD%\Users\Public /grant Администраторы:(OI)(CI)(M,RX,D,WDAC,WO) /T /C /L /Q icacls %CD%\Users\Public /grant Пользователи:(OI)(CI)RX /T /C /L /Q icacls %CD%\Users\Public /grant "Прошедшие проверку":(OI)(CI)(IO)(M,RX,D) /T /C /L /Q rem создание файла Users\Public\desktop.ini @echo.> %CD%\Users\Public\desktop.ini @echo [.ShellClassInfo]>> %CD%\Users\Public\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21816>> %CD%\Users\Public\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Users\Public\desktop.ini attrib +r %CD%\Users\Public rem создание основных папок в папке Public в папке Users mkdir %CD%\Users\Public\Documents rem создание файла %CD%\Users\Public\Documents\desktop.ini @echo.> %CD%\Users\Public\Documents\desktop.ini @echo [.ShellClassInfo]>> %CD%\Users\Public\Documents\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21801>> %CD%\Users\Public\Documents\desktop.ini @echo [ViewState]>> %CD%\Users\Public\Documents\desktop.ini @echo Mode=>> %CD%\Users\Public\Documents\desktop.ini @echo Vid=>> %CD%\Users\Public\Documents\desktop.ini @echo FolderType=Documents>> %CD%\Users\Public\Documents\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Users\Public\Documents\desktop.ini attrib +r %CD%\Users\Public\Documents mkdir %CD%\Users\Public\Downloads rem создание файла %CD%\Users\Public\Downloads\desktop.ini @echo.> %CD%\Users\Public\Downloads\desktop.ini @echo [.ShellClassInfo]>> %CD%\Users\Public\Downloads\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21808>> %CD%\Users\Public\Downloads\desktop.ini @echo [ViewState]>> %CD%\Users\Public\Downloads\desktop.ini @echo Mode=>> %CD%\Users\Public\Downloads\desktop.ini @echo Vid=>> %CD%\Users\Public\Downloads\desktop.ini @echo FolderType=Generic>> %CD%\Users\Public\Downloads\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Users\Public\Downloads\desktop.ini attrib +r %CD%\Users\Public\Downloads mkdir %CD%\Users\Public\Music rem создание файла %CD%\Users\Public\Music\desktop.ini @echo.> %CD%\Users\Public\Music\desktop.ini @echo [.ShellClassInfo]>> %CD%\Users\Public\Music\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21803>> %CD%\Users\Public\Music\desktop.ini @echo InfoTip=@%SystemRoot%\system32\shell32.dll,-12689>> %CD%\Users\Public\Music\desktop.ini @echo [ViewState]>> %CD%\Users\Public\Music\desktop.ini @echo Mode=>> %CD%\Users\Public\Music\desktop.ini @echo Vid=>> %CD%\Users\Public\Music\desktop.ini @echo FolderType=Music>> %CD%\Users\Public\Music\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Users\Public\Music\desktop.ini attrib +r %CD%\Users\Public\Music mkdir %CD%\Users\Public\Pictures rem создание файла %CD%\Users\Public\Pictures\desktop.ini @echo.> %CD%\Users\Public\Pictures\desktop.ini @echo [.ShellClassInfo]>> %CD%\Users\Public\Pictures\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21802>> %CD%\Users\Public\Pictures\desktop.ini @echo InfoTip=@%SystemRoot%\system32\shell32.dll,-12688>> %CD%\Users\Public\Pictures\desktop.ini @echo [ViewState]>> %CD%\Users\Public\Pictures\desktop.ini @echo Mode=>> %CD%\Users\Public\Pictures\desktop.ini @echo Vid=>> %CD%\Users\Public\Pictures\desktop.ini @echo FolderType=Pictures>> %CD%\Users\Public\Pictures\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Users\Public\Pictures\desktop.ini attrib +r %CD%\Users\Public\Pictures mkdir %CD%\Users\Public\Videos rem создание файла %CD%\Users\Public\Videos\desktop.ini @echo.> %CD%\Users\Public\Videos\desktop.ini @echo [.ShellClassInfo]>> %CD%\Users\Public\Videos\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21804>> %CD%\Users\Public\Videos\desktop.ini @echo InfoTip=@%SystemRoot%\system32\shell32.dll,-12690>> %CD%\Users\Public\Videos\desktop.ini @echo [ViewState]>> %CD%\Users\Public\Videos\desktop.ini @echo Mode=>> %CD%\Users\Public\Videos\desktop.ini @echo Vid=>> %CD%\Users\Public\Videos\desktop.ini @echo FolderType=Videos>> %CD%\Users\Public\Videos\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Users\Public\Videos\desktop.ini attrib +r %CD%\Users\Public\Videos echo DONE :createname1 if exist %CD%\Users\%Name1% goto er1_name1 rem создание папки %Name1% в папке %CD%\Users: mkdir %CD%\Users\%Name1% rem Установка прав доступа NTFS для папки %Name1% из папки Users icacls %CD%\Users\%Name1% /inheritance:r icacls %CD%\Users\%Name1% /grant *%Sid1%:(OI)(CI)(M,RX,D,WDAC,WO) /T /C /L /Q rem создание основных папок в папке %Name1% в папке %CD%\Users: mkdir %CD%\Users\%Name1%\Documents rem создание файла %CD%\Users\%Name1%\Documents\desktop.ini @echo.> %CD%\Users\%Name1%\Documents\desktop.ini @echo [.ShellClassInfo]>> %CD%\Users\%Name1%\Documents\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21770>> %CD%\Users\%Name1%\Documents\desktop.ini @echo IconResource=%SystemRoot%\system32\imageres.dll,-112>> %CD%\Users\%Name1%\Documents\desktop.ini @echo [ViewState]>> %CD%\Users\%Name1%\Documents\desktop.ini @echo Mode=>> %CD%\Users\%Name1%\Documents\desktop.ini @echo Vid=>> %CD%\Users\%Name1%\Documents\desktop.ini @echo FolderType=Documents>> %CD%\Users\%Name1%\Documents\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Users\%Name1%\Documents\desktop.ini attrib +r %CD%\Users\%Name1%\Documents mkdir %CD%\Users\%Name1%\Downloads rem создание файла %CD%\Users\%Name1%\Downloads\desktop.ini @echo.> %CD%\Users\%Name1%\Downloads\desktop.ini @echo [.ShellClassInfo]>> %CD%\Users\%Name1%\Downloads\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21798>> %CD%\Users\%Name1%\Downloads\desktop.ini @echo IconResource=%SystemRoot%\system32\imageres.dll,-184>> %CD%\Users\%Name1%\Downloads\desktop.ini @echo [ViewState]>> %CD%\Users\%Name1%\Downloads\desktop.ini @echo Mode=>> %CD%\Users\%Name1%\Downloads\desktop.ini @echo Vid=>> %CD%\Users\%Name1%\Downloads\desktop.ini @echo FolderType=Generic>> %CD%\Users\%Name1%\Downloads\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Users\%Name1%\Downloads\desktop.ini attrib +r %CD%\Users\%Name1%\Downloads mkdir %CD%\Users\%Name1%\Favorites rem создание файла %CD%\Users\%Name1%\Favorites\desktop.ini @echo.> %CD%\Users\%Name1%\Favorites\desktop.ini @echo [.ShellClassInfo]>> %CD%\Users\%Name1%\Favorites\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21796>> %CD%\Users\%Name1%\Favorites\desktop.ini @echo IconResource=%SystemRoot%\system32\imageres.dll,-115>> %CD%\Users\%Name1%\Favorites\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Users\%Name1%\Favorites\desktop.ini attrib +r %CD%\Users\%Name1%\Favorites mkdir %CD%\Users\%Name1%\Music rem создание файла %CD%\Users\%Name1%\Music\desktop.ini @echo.> %CD%\Users\%Name1%\Music\desktop.ini @echo [.ShellClassInfo]>> %CD%\Users\%Name1%\Music\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21790>> %CD%\Users\%Name1%\Music\desktop.ini @echo InfoTip=@%SystemRoot%\system32\shell32.dll,-12689>> %CD%\Users\%Name1%\Music\desktop.ini @echo IconResource=%SystemRoot%\system32\imageres.dll,-108>> %CD%\Users\%Name1%\Music\desktop.ini @echo [ViewState]>> %CD%\Users\%Name1%\Music\desktop.ini @echo Mode=>> %CD%\Users\%Name1%\Music\desktop.ini @echo Vid=>> %CD%\Users\%Name1%\Music\desktop.ini @echo FolderType=Music>> %CD%\Users\%Name1%\Music\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Users\%Name1%\Music\desktop.ini attrib +r %CD%\Users\%Name1%\Music mkdir %CD%\Users\%Name1%\Pictures rem создание файла %CD%\Users\%Name1%\Pictures\desktop.ini @echo.> %CD%\Users\%Name1%\Pictures\desktop.ini @echo [.ShellClassInfo]>> %CD%\Users\%Name1%\Pictures\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21779>> %CD%\Users\%Name1%\Pictures\desktop.ini @echo InfoTip=@%SystemRoot%\system32\shell32.dll,-12688>> %CD%\Users\%Name1%\Pictures\desktop.ini @echo IconResource=%SystemRoot%\system32\imageres.dll,-113>> %CD%\Users\%Name1%\Pictures\desktop.ini @echo [ViewState]>> %CD%\Users\%Name1%\Pictures\desktop.ini @echo Mode=>> %CD%\Users\%Name1%\Pictures\desktop.ini @echo Vid=>> %CD%\Users\%Name1%\Pictures\desktop.ini @echo FolderType=Pictures>> %CD%\Users\%Name1%\Pictures\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Users\%Name1%\Pictures\desktop.ini attrib +r %CD%\Users\%Name1%\Pictures mkdir %CD%\Users\%Name1%\Videos rem создание файла %CD%\Users\%Name1%\Videos\desktop.ini @echo.> %CD%\Users\%Name1%\Videos\desktop.ini @echo [.ShellClassInfo]>> %CD%\Users\%Name1%\Videos\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21791>> %CD%\Users\%Name1%\Videos\desktop.ini @echo InfoTip=@%SystemRoot%\system32\shell32.dll,-12690>> %CD%\Users\%Name1%\Videos\desktop.ini @echo IconResource=%SystemRoot%\system32\imageres.dll,-189>> %CD%\Users\%Name1%\Videos\desktop.ini @echo [ViewState]>> %CD%\Users\%Name1%\Videos\desktop.ini @echo Mode=>> %CD%\Users\%Name1%\Videos\desktop.ini @echo Vid=>> %CD%\Users\%Name1%\Videos\desktop.ini @echo FolderType=Videos>> %CD%\Users\%Name1%\Videos\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Users\%Name1%\Videos\desktop.ini attrib +r %CD%\Users\%Name1%\Videos echo DONE rem создание дополнительных папок mkdir %CD%\Documents rem создание файла %CD%\Documents\desktop.ini @echo.> %CD%\Documents\desktop.ini @echo [.ShellClassInfo]>> %CD%\Documents\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21770>> %CD%\Documents\desktop.ini @echo [ViewState]>> %CD%\Documents\desktop.ini @echo Mode=>> %CD%\Documents\desktop.ini @echo Vid=>> %CD%\Documents\desktop.ini @echo FolderType=Documents>> %CD%\Documents\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Documents\desktop.ini attrib +r %CD%\Documents mkdir %CD%\Downloads rem создание файла %CD%\Downloads\desktop.ini @echo.> %CD%\Downloads\desktop.ini @echo [.ShellClassInfo]>> %CD%\Downloads\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21798>> %CD%\Downloads\desktop.ini @echo [ViewState]>> %CD%\Downloads\desktop.ini @echo Mode=>> %CD%\Downloads\desktop.ini @echo Vid=>> %CD%\Downloads\desktop.ini @echo FolderType=Generic>> %CD%\Downloads\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Downloads\desktop.ini attrib +r %CD%\Downloads mkdir %CD%\Favorites rem создание файла %CD%\Favorites\desktop.ini @echo.> %CD%\Favorites\desktop.ini @echo [.ShellClassInfo]>> %CD%\Favorites\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21796>> %CD%\Favorites\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Favorites\desktop.ini attrib +r %CD%\Favorites mkdir %CD%\Music rem создание файла %CD%\Music\desktop.ini @echo.> %CD%\Music\desktop.ini @echo [.ShellClassInfo]>> %CD%\Music\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21790>> %CD%\Music\desktop.ini @echo InfoTip=@%SystemRoot%\system32\shell32.dll,-12689>> %CD%\Music\desktop.ini @echo [ViewState]>> %CD%\Music\desktop.ini @echo Mode=>> %CD%\Music\desktop.ini @echo Vid=>> %CD%\Music\desktop.ini @echo FolderType=Music>> %CD%\Music\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Music\desktop.ini attrib +r %CD%\Music mkdir %CD%\Pictures rem создание файла Pictures\desktop.ini @echo.> %CD%\Pictures\desktop.ini @echo [.ShellClassInfo]>> %CD%\Pictures\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21779>> %CD%\Pictures\desktop.ini @echo InfoTip=@%SystemRoot%\system32\shell32.dll,-12688>> %CD%\Pictures\desktop.ini @echo [ViewState]>> %CD%\Pictures\desktop.ini @echo Mode=>> %CD%\Pictures\desktop.ini @echo Vid=>> %CD%\Pictures\desktop.ini @echo FolderType=Pictures>> %CD%\Pictures\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Pictures\desktop.ini attrib +r %CD%\Pictures mkdir %CD%\Videos rem создание файла %CD%\Videos\desktop.ini @echo.> %CD%\Videos\desktop.ini @echo [.ShellClassInfo]>> %CD%\Videos\desktop.ini @echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21791>> %CD%\Videos\desktop.ini @echo InfoTip=@%SystemRoot%\system32\shell32.dll,-12690>> %CD%\Videos\desktop.ini @echo [ViewState]>> %CD%\Videos\desktop.ini @echo Mode=>> %CD%\Videos\desktop.ini @echo Vid=>> %CD%\Videos\desktop.ini @echo FolderType=Videos>> %CD%\Videos\desktop.ini rem применение атрибутов к файлу и папке attrib +s +h %CD%\Videos\desktop.ini attrib +r %CD%\Videos rem создание символьных ссылок (связей) из общей папки в дополнительных папках и установка прав доступа NTFS к этим ссылкам mklink /j "%CD%\Documents\Общие документы" "%CD%\Users\Public\Documents" icacls "%CD%\Documents\Общие документы" /inheritance:r icacls "%CD%\Documents\Общие документы" /grant *%Sid1%:(M,RX,D,WDAC,WO) /T /C /L /Q icacls "%CD%\Documents\Общие документы" /grant Администраторы:(M,RX,D,WDAC,WO) /T /C /L /Q icacls "%CD%\Documents\Общие документы" /grant Пользователи:RX /T /C /L /Q icacls "%CD%\Documents\Общие документы" /grant Все:RX /T /C /L /Q mklink /j "%CD%\Downloads\Общие загруженные файлы" "%CD%\Users\Public\Downloads" icacls "%CD%\Downloads\Общие загруженные файлы" /inheritance:r icacls "%CD%\Downloads\Общие загруженные файлы" /grant *%Sid1%:(M,RX,D,WDAC,WO) /T /C /L /Q icacls "%CD%\Downloads\Общие загруженные файлы" /grant Администраторы:(M,RX,D,WDAC,WO) /T /C /L /Q icacls "%CD%\Downloads\Общие загруженные файлы" /grant Пользователи:RX /T /C /L /Q icacls "%CD%\Downloads\Общие загруженные файлы" /grant Все:RX /T /C /L /Q mklink /j "%CD%\Music\Общая музыка" "%CD%\Users\Public\Music" icacls "%CD%\Music\Общая музыка" /inheritance:r icacls "%CD%\Music\Общая музыка" /grant *%Sid1%:(M,RX,D,WDAC,WO) /T /C /L /Q icacls "%CD%\Music\Общая музыка" /grant Администраторы:(M,RX,D,WDAC,WO) /T /C /L /Q icacls "%CD%\Music\Общая музыка" /grant Пользователи:RX /T /C /L /Q icacls "%CD%\Music\Общая музыка" /grant Все:RX /T /C /L /Q mklink /j "%CD%\Pictures\Общие изображения" "%CD%\Users\Public\Pictures" icacls "%CD%\Pictures\Общие изображения" /inheritance:r icacls "%CD%\Pictures\Общие изображения" /grant *%Sid1%:(M,RX,D,WDAC,WO) /T /C /L /Q icacls "%CD%\Pictures\Общие изображения" /grant Администраторы:(M,RX,D,WDAC,WO) /T /C /L /Q icacls "%CD%\Pictures\Общие изображения" /grant Пользователи:RX /T /C /L /Q icacls "%CD%\Pictures\Общие изображения" /grant Все:RX /T /C /L /Q mklink /j "%CD%\Videos\Общие видео" "%CD%\Users\Public\Videos" icacls "%CD%\Videos\Общие видео" /inheritance:r icacls "%CD%\Videos\Общие видео" /grant *%Sid1%:(M,RX,D,WDAC,WO) /T /C /L /Q icacls "%CD%\Videos\Общие видео" /grant Администраторы:(M,RX,D,WDAC,WO) /T /C /L /Q icacls "%CD%\Videos\Общие видео" /grant Пользователи:RX /T /C /L /Q icacls "%CD%\Videos\Общие видео" /grant Все:RX /T /C /L /Q rem создание символьных ссылок (связей) из %Name1% в дополнительных папках и установка прав доступа NTFS к этим ссылкам mklink /j "%CD%\Documents\Документы - %Name1%" "%CD%\Users\%Name1%\Documents" icacls "%CD%\Documents\Документы - %Name1%" /inheritance:r icacls "%CD%\Documents\Документы - %Name1%" /grant *%Sid1%:(M,RX,D,WDAC,WO) /T /C /L /Q mklink /j "%CD%\Downloads\Загрузки - %Name1%" "%CD%\Users\%Name1%\Downloads" icacls "%CD%\Downloads\Загрузки - %Name1%" /inheritance:r icacls "%CD%\Downloads\Загрузки - %Name1%" /grant *%Sid1%:(M,RX,D,WDAC,WO) /T /C /L /Q mklink /j "%CD%\Favorites\Избранное - %Name1%" "%CD%\Users\%Name1%\Favorites" icacls "%CD%\Favorites\Избранное - %Name1%" /inheritance:r icacls "%CD%\Favorites\Избранное - %Name1%" /grant *%Sid1%:(M,RX,D,WDAC,WO) /T /C /L /Q mklink /j "%CD%\Music\Музыка - %Name1%" "%CD%\Users\%Name1%\Music" icacls "%CD%\Music\Музыка - %Name1%" /inheritance:r icacls "%CD%\Music\Музыка - %Name1%" /grant *%Sid1%:(M,RX,D,WDAC,WO) /T /C /L /Q mklink /j "%CD%\Pictures\Изображения - %Name1%" "%CD%\Users\%Name1%\Pictures" icacls "%CD%\Pictures\Изображения - %Name1%" /inheritance:r icacls "%CD%\Pictures\Изображения - %Name1%" /grant *%Sid1%:(M,RX,D,WDAC,WO) /T /C /L /Q mklink /j "%CD%\Videos\Видео - %Name1%" "%CD%\Users\%Name1%\Videos" icacls "%CD%\Videos\Видео - %Name1%" /inheritance:r icacls "%CD%\Videos\Видео - %Name1%" /grant *%Sid1%:(M,RX,D,WDAC,WO) /T /C /L /Q rem удалить лишние права rem icacls %CD%\Users\Public /remove:g *%Sid1% rem icacls %CD%\Users /remove:g *%Sid1% rem icacls "Documents\Общие документы" /remove:g *%Sid1% /L rem icacls "Downloads\Общие загруженные файлы" /remove:g *%Sid1% /L rem icacls "Music\Общая музыка" /remove:g *%Sid1% /L rem icacls "Pictures\Общие изображения" /remove:g *%Sid1% /L rem icacls "Videos\Общие видео" /remove:g *%Sid1% /L rem icacls .\ /remove:g *%Sid1% goto exit :er1_Users echo Папка %CD%\Users уже существует, папка пропущена goto createpublic :er1_public echo Папка %CD%\Users уже существует, папка пропущена goto createname1 :er1_name1 echo Папка %CD%\Users\%Name1% уже существует, папка пропущена goto exit :exit pause |
|
Отправлено: 00:07, 08-11-2014 |
Новый участник Сообщения: 25
|
Профиль | Отправить PM | Цитировать Но это для меня еще сложно :D, буду разбираться
|
Отправлено: 19:35, 08-11-2014 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Friek, ничего страшного, пробуйте. Не боги горшки обжигают. Всё придёт со временем.
Суть в том, что переход от линейной «простыни» к структурному коду делает последний нагляднее и понятнее. |
Отправлено: 19:38, 08-11-2014 | #12 |
Новый участник Сообщения: 25
|
Профиль | Отправить PM | Цитировать Iska, я так понял, код:
Скрытый текст
[code]
@echo off setlocal enableextensions enabledelayedexpansion set Name1=SomeUser call :CreateDesktopIni "%Name1%" "Documents" "-21770" "" "-112" "Documents" call :CreateDesktopIni "%Name1%" "Downloads" "-21798" "" "-184" "Generic" call :CreateDesktopIni "%Name1%" "Favorites" "-21796" "" "-115" "" call :CreateDesktopIni "%Name1%" "Music" "-21790" "-12689" "-108" "Music" call :CreateDesktopIni "%Name1%" "Pictures" "-21779" "-12688" "-113" "Pictures" call :CreateDesktopIni "%Name1%" "Videos" "-21791" "-12690" "-189" "Videos" endlocal exit /b 0 :CreateDesktopIni set sUser=%~1 set sFolder=%~2 set sLocalizedResourceNameNumber=%~3 set sInfoTipNumber=%~4 set sIconResourceNumber=%~5 set sFolderType=%~6 if defined sUser ( >"%CD%\Users\%sUser%\%sFolder%\desktop.ini" ( echo [.ShellClassInfo] echo LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,%sLocalizedResourceNameNumber% if defined sInfoTipNumber echo InfoTip=@%SystemRoot%\system32\shell32.dll,%sInfoTipNumber% echo IconResource=%SystemRoot%\system32\imageres.dll,%sIconResourceNumber% echo [ViewState] echo Mode= echo Vid= echo FolderType=%sFolderType% ) ) exit /b 0 [\code] используется только для пользователя %name1%, а для Public папки нужно его дублировать? |
Отправлено: 19:53, 08-11-2014 | #13 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Friek, возможно. Я не вникал в Ваш код в деталях. Это просто образцы — как можно сделать, не следуйте им слепо.
|
Отправлено: 20:03, 08-11-2014 | #14 |
Новый участник Сообщения: 25
|
Профиль | Отправить PM | Цитировать Простите, возник вопрос...
С при использовании cd /d "%~dp0" в начале скрипта использование переменной %CD% отпадает? Или она обязательна? |
Отправлено: 21:04, 08-11-2014 | #15 |
Новый участник Сообщения: 25
|
Профиль | Отправить PM | Цитировать Например если я батник кладу в корень флешки то часть кода, а именно:
rem установка прав доступа NTFS на корневую папку icacls "%CD%" /inheritance:r icacls "%CD%" /grant *%Sid1%:(OI)(CI)(M,RX,D,WDAC,WO) /T /C /L /Q icacls "%CD%" /grant Администраторы:(OI)(CI)(M,RX,D,WDAC,WO) /T /C /L /Q icacls "%CD%" /grant Пользователи:(OI)(CI)RX /T /C /L /Q icacls "%CD%" /grant Все:(OI)(CI)RX /T /C /L /Q rem установка прав доступа NTFS на корневую папку icacls ./ /inheritance:r icacls ./ /grant *%Sid1%:(OI)(CI)(M,RX,D,WDAC,WO) /T /C /L /Q icacls ./ /grant Администраторы:(OI)(CI)(M,RX,D,WDAC,WO) /T /C /L /Q icacls ./ /grant Пользователи:(OI)(CI)RX /T /C /L /Q icacls ./ /grant Все:(OI)(CI)RX /T /C /L /Q |
Отправлено: 23:27, 08-11-2014 | #16 |
Новый участник Сообщения: 25
|
Профиль | Отправить PM | Цитировать Цитата Iska:
|
|
Отправлено: 00:02, 09-11-2014 | #17 |
Ветеран Сообщения: 874
|
Профиль | Отправить PM | Цитировать Цитата Friek:
Если и работает, то Вам повезло с командой "ICACLS". Если уж ставить слеш после точки, то обратный ("\"), но в данном случае он излишен. Вот так короче: . |
|
Отправлено: 00:34, 09-11-2014 | #18 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата Friek:
|
|
Отправлено: 00:48, 09-11-2014 | #19 |
Новый участник Сообщения: 25
|
Профиль | Отправить PM | Цитировать Цитата Georgio:
Цитата Georgio:
|
||
Последний раз редактировалось Friek, 09-11-2014 в 10:15. Отправлено: 10:05, 09-11-2014 | #20 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Копирование папок и файлов с правами доступа NTFS | TERMINAL | AutoIt | 1 | 15-06-2012 09:30 | |
[решено] Перенос прав доступа общих папок | Evgeniy_Spartak | Microsoft Windows NT/2000/2003 | 7 | 15-02-2012 01:35 | |
Ограничение прав доступа до папок (Организационный вопрос) | tarasov.evgeny | Хочу все знать | 4 | 13-07-2011 00:40 | |
Разное - Поддерживает ли SymantecGhost(из под DOS) полное копирование NTFS прав доступа? | Lexius | Другие серверные продукты | 3 | 22-07-2010 00:51 | |
Автоматизация создания вложенных папок | PhantomLo | Хочу все знать | 1 | 06-08-2009 20:25 |
|