Real Root
Advanced Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Товарищи, стоит задача обработать все файлы в текущем каталоге и всех его подкаталогах, кроме файлов *.exe командой cacls. Написал следующий скрипт: Код: @Echo off & SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION FOR /f "usebackq delims=" %%I IN (`DIR "D:\111\test\*.*" /B /S`) DO ( IF /I %%~xI==.exe (echo %%I exe file >> NUL) else ( cacls %%I /e /G Admin:F) ) pause | Но проблема в том, что, она обрабатывает и подкаталоги. Как заставить игнорировать подкаталоги? Если объяснять цель, то суть такова: Есть расшаренная папка, я на нее устанавливаю по-умолчанию права на только чтение. Потом обрабатываю скриптом, и получается что все файлы, кроме exe можно будет изменять. Просто сеть смешанная и совмещена с другим подразделением предприятия где работает админ ПРОТЖ, и у которого вирусы по сети гуляют, как у себя домаю. Требуется запретить изменение всех exe файлов в расщаринных папках. Почемуто если раздовать разрешения именно exe-файлам - то они один фиг изменяются и удаляются. Если сначала дать разрешения для папки и вложенных в нее файлов (только чтение), то exe файлы уже модифицировать/удалить нельзя. Короче говоря цель, чтоб все exe вайлы изменять,удалять было нельзя, а все остальное можно было рдактировать (изменять) Добавил с утра: Цитата: Как заставить игнорировать подкаталоги? | Цитата: мне нужно чтобы файлы в подкаталогах перечислялись, но не выводилсиь названия самих подкаталогов. Короче говоря мне нужно из обработки скрипта исключить все exe файлы и названия подкаталогов. Т.к. в таком случае с них тоже снимаются права NTFS | Всего записей: 1038 | Зарегистр. 13-04-2006 | Отправлено: 00:08 23-07-2009 | Исправлено: Real Root, 06:15 23-07-2009 |
|