Войти

Показать полную графическую версию : Сделать все папки в определенной папке нескрытыми и несистемными


Котяра
13-02-2012, 20:09
Требуется автоматизированное решение данной задачи, на BAT, VBS/JS или Autoit3.

Morpheus
13-02-2012, 20:18
attrib /?
Удивительно даже (http://forum.oszone.net/post-824541.html#post824541)

Котяра
13-02-2012, 20:26
Отображение или изменение атрибутов файлов.

ATTRIB [+R | -R] [+A | -A ] [+S | -S] [+H | -H] [+I | -I]
[диск:][путь][имя_файла] [/S [/D] [/L]]

+ Установка атрибута.
- Снятие атрибута.
R Атрибут "Только чтение".
A Атрибут "Архивный".
S Атрибут "Системный".
H Атрибут "Скрытый".
I Атрибут "Неиндексированное содержимое".
[диск:][путь][имя файла]
Указание файла или набора файлов для обработки.
/S Обработка файлов с указанными именами в текущем каталоге
и во всех его подкаталогах.
/D Обработка файлов и каталогов.
/L Работать с атрибутами самой символической ссылки,
а не целевого объекта этой символической ссылки.

Что именно нужно сделать: надо сделать все папки нескрытыми, несистемным и не "только для чтения" (-s -h -r). Но при этом надо не трогать файлы. В подпапки лазить не обязательно (не нужно, вообще-то) - надо сделать папки первого уровня нескрытыми и т.п.

Как именно добиться нужного результата?

Что проверено: attrib.exe -s -h -r * /S /D лишает атрибутов все объекты (файлы и папки), [b]attrib.exe -s -h -r * /S/b] - только файлы, но и в подпапках. Впрочем, иного результата сложно ожидать, если вдумчиво прочитать справку к команде.

Небольшое пояснение, зачем это нужно - восстанавливать папки после Autorun-вируса.

Morpheus
14-02-2012, 00:58
Котяра, не знаком с работой этих вирусов, но чтение Solved: Batch file to hide/unhide a folder - Tech Support Guy Forums (http://forums.techguy.org/dos-other/962899-solved-batch-file-hide-unhide.html) наводит на мысль, что скрытые делаются не скрытыми и наоборот. C файлами происходит аналогично?
Тогда нужен чуть более интеллектуальный скрипт, который будет менять атрибуты на противоположные в зависимости от текущих. Он есть в указанной теме.

Или всё-таки тупо все папки делаются скрытыми, а файлы не трогаются?

Iska
14-02-2012, 02:18
Или всё-таки тупо все папки делаются скрытыми, а файлы не трогаются? »
Не все, но именно папки. В затронутую папку кладутся исполняемые файлы с основным значком в виде обычной папки, имеющие имена, совпадающие с именами подкаталогов, сами подкаталоги делаются скрытыми. Настройки Проводника меняются таким образом, чтобы не отображались скрытые файлы и папки, не отображались расширения у зарегистрированных типов файлов (собственно — настройки по умолчанию). Всё это делается с целью ввести пользователя в заблуждение, чтобы он принял исполняемый файл с вирусом за скрытую теперь папку. Понятно, что при попытке входа в такую «файл-папку» будет запущен исполняемый файл.

Подходящего изображения не нашлось, пришлось имитировать. Видимая:

http://img59.imageshack.us/img59/4923/image001kh.png

и реальная:

http://img842.imageshack.us/img842/4229/image002zm.png

картины.

Вон уже программы для этого пишут: Download USB Hidden Folder Fix 1.1 Free - Fixes the "invisible folders" in USB media. - Softpedia (http://www.softpedia.com/get/System/File-Management/USB-Hidden-Folder-Fix.shtml) ;).

Как именно добиться нужного результата? »
Непосредственно из командной строки, с обработкой вложенных папок:
for /r %i in (.) do attrib.exe -r -h -s "%~fi"

Котяра
14-02-2012, 02:18
Morpheus, Autorun-вирус (одна из его разновидностей) делает папки скрытыми и системными, а сам создаёт EXE-ложные папки, которые запускают вирус. Также часто создает папку вроде "RECYCLER", "ACC2" или "F1" и т.п. со своим телом. И если удаление тел вируса (EXE) можно поручить обычному антивирусу, то скрытые папки приходится "восстанавливать" вручную, командой attrib -s -h -r "имя папки".

Iska, спасибо огромное! Если можно, хотелось бы ещё вариант без обработки вложенных папок. Хотелось бы почитать где-нибудь доступно про команду "for" - команда интересная, хотелось бы научиться с ней работать.

Iska
14-02-2012, 02:53
Дополнил своё предыдущее сообщение.

Котяра, сделать всё можно. Только овчинка выделки не стоит. Берёте Far Manager, Total Commander, або любой другой файловый менеджер, выделяете потребные скрытые папки (или делаете их поиск) и выставляете им атрибуты чохом.

По Far Manager'у могу даже записать Вам ролик, как искать и находить такие папки, как переносить ссылки на них во временную панель (например, чтобы исключить какие-то из них «ручками» из последующей обработки), и как затем снимать у них атрибуты. Ролик можно будет воспроизвести в самом Far Manager'е.

Котяра
14-02-2012, 03:01
Iska, хотелось бы написать утилиту для неопытных пользователей.

Iska
14-02-2012, 03:03
Хотелось бы почитать где-нибудь доступно про команду "for" - команда интересная, хотелось бы научиться с ней работать. »
На русском?

Iska, хотелось бы написать утилиту для неопытных пользователей. »
Какого плана?

P.S. Вон уже программы для этого пишут: Download USB Hidden Folder Fix 1.1 Free - Fixes the "invisible folders" in USB media. - Softpedia (http://www.softpedia.com/get/System/File-Management/USB-Hidden-Folder-Fix.shtml) ;). »

Котяра
14-02-2012, 03:16
Iska, на английском тоже можно. Спасибо за ссылку на утилиту! Утилиту хотелось бы написать как раз таки убирающую атрибут скрытости, также возможно убивающую известные файлы вируса. Просто, как мне кажется, возможно, для данной задачи правильнее идти только по папкам первого уровня - т.к. у пользователя могут быть свои родные скрытые папки в подпапках, а вирусов, "шалящих" по подпапкам, я не встречал. Хотя, в принципе, вероятность наличия вообще каких-то преднамеренно скрытых папок на флешке стремится к нулю. Другое дело файлы.

Ещё раз спасибо за помощь и составленную команду!

Iska
14-02-2012, 04:52
на английском тоже можно. »
Кроме MSDN хорошие описания с примерами есть у Саймона: For - Loop through files (http://ss64.com/nt/for2.html) (не забудьте прогуляться по ссылкам «Related» в низу страницы), у Роба: Batch files - FOR loops (http://www.robvanderwoude.com/for.php) (так же не забываем пройтись по ссылкам на: Batch files - The FOR command: Windows NT 4/Windows 2000 Syntax (http://www.robvanderwoude.com/ntfor.php), Batch Files - Variable Expansion in FOR Loops (http://www.robvanderwoude.com/variableexpansion.php), NT's FOR /F command: tokens and delims (http://www.robvanderwoude.com/ntfortokens.php)).

Утилиту хотелось бы написать как раз таки убирающую атрибут скрытости, также возможно убивающую известные файлы вируса. »
Можете попросить автора сего: Зоркий глаз 5.409. Как удалить autorun-вирус с флешки? (http://www.exnax.narod.ru/antivir.htm). Мне же, ей-ей, быстрее, проще и надёжнее проделать сие в Far Manager'е «ручками».

Котяра
14-02-2012, 19:17
Iska, спасибо!




© OSzone.net 2001-2012