Я не хочу видеть 50 лишних папок и файлов в корне профиля и диска, поэтому отображение скрытых и системных файлов у меня отключено. А вам не мешают папки типа Documents and Settings или файл desktop.ini на рабочем столе? Сегодня мы поговорим об отображении файлов и папок, их атрибутах и ссылках файловой системы.
Когда-то у меня было включено отображение скрытых и системных файлов. Мне казалось, что так я лучше контролирую происходящее в системе. Но начиная с Windows Vista, на диске появилось слишком много лишних объектов, и я отображаю только те, что мне могут быть нужны.
На рисунке вы видите корень моего системного диска. Слева отображение скрытых и системных файлов включено, а справа – выключено. Почувствуйте разницу!
Ненужные файлы и папки лишь рассеивают внимание и отвлекают от главного. Достаточно просто знать, что в корне диска есть папки ProgramData и $Recycle.Bin или файлы pagefile.sys и hiberfil.sys, с которыми мы никогда не работаем.
[+] Сегодня в программе
- Как настроить отображение скрытых и системных файлов
- В чем разница между скрытыми и системными файлами
- Атрибуты файлов и папок
- Как посмотреть атрибуты
- Как изменить атрибуты
- Почему у папок флажок «Только для чтения» имеет три состояния
- Как получить доступ к папке “Documents and Settings” в корне диска и похожим папкам в профиле
- Опрос
Как настроить отображение скрытых и системных файлов
Я уверен, что большинство читателей знает, где все настраивается, поэтому буду краток.
Начиная с Windows 8, можно переключать отображение скрытых файлов на вкладке Вид ленты проводника.
В проводнике:
- Windows 8 и новее — Файл → Параметры → Вид
- Windows 7 — Упорядочить → Параметры папок и поиска → Вид
В Total Commander: Конфигурация – Настройка – Экран:
Занятно, что в TC у флажка такое название, что не поставить его – значит, себя не уважать :)
Как я сказал выше, в проводнике у меня отключен показ скрытых и системных файлов. Когда они мне нужны, я переключаю вид проводника одним щелчком мыши. Как я заметил выше, в новых ОС нужная опция есть на ленте Проводника, и я добавил ее в панель быстрого запуска. А в Windows 7 это делается из контекстного меню.
Эта команда вызывает скрипт VBS, который делает всю работу – изменяет параметры реестра и обновляет текущее окно проводника. Кстати, похожий скрипт уже появлялся в комментариях блога.
Скрипт VBS для переключения отображения скрытых и системных файлов
' Скрипт для переключения отображения скрытых и системных файлов ' в проводнике, а также расширений файлов ' Подробнее /12452 Option Explicit Dim dblHiddenData, strHiddenKey, strSuperHiddenKey, strFileExtKey Dim strKey, WshShell On Error Resume Next strKey = "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" strHiddenKey = strKey & "\Hidden" strSuperHiddenKey = strKey & "\ShowSuperHidden" 'strFileExtKey = strKey & "\HideFileExt" Set WshShell = WScript.CreateObject("WScript.Shell") dblHiddenData = WshShell.RegRead(strHiddenKey) If dblHiddenData = 2 Then 'Скрытые файлы WshShell.RegWrite strHiddenKey, 1, "REG_DWORD" 'Системные файлы WshShell.RegWrite strSuperHiddenKey, 1, "REG_DWORD" 'Расширения 'WshShell.RegWrite strFileExtKey, 0, "REG_DWORD" WSHShell.SendKeys "{F5}" Else WshShell.RegWrite strHiddenKey, 2, "REG_DWORD" WshShell.RegWrite strSuperHiddenKey, 0, "REG_DWORD" 'WshShell.RegWrite strFileExtKey, 1, "REG_DWORD" WSHShell.SendKeys "{F5}" End If
Мой REG-файл добавляет запуск скрипта из контекстного меню папки и ее фона (пункт отображается при вызове меню с нажатой клавишей Shift).
REG-файл для добавления скрипта VBS в контекстные меню папки
Windows Registry Editor Version 5.00 ; Добавление в контекстное меню папки и фона папки ; пункта для переключения отображения скрытых и системных файлов ; Подробнее /12452 [HKEY_CLASSES_ROOT\Directory\Background\shell\ShowHideFiles] "Extended"="" "MUIVerb"="Переключить отображение скрытых файлов" "Icon"="SHELL32.dll,47" [HKEY_CLASSES_ROOT\Directory\Background\shell\ShowHideFiles\command] @="wscript.exe C:\\Windows\\System32\\ToggleHiddenSystemFiles.vbs" [HKEY_CLASSES_ROOT\Directory\shell\ShowHideFiles] "Extended"="" "MUIVerb"="Переключить отображение скрытых файлов" "Icon"="SHELL32.dll,47" [HKEY_CLASSES_ROOT\Directory\shell\ShowHideFiles\command] @="wscript.exe C:\\Windows\\System32\\ToggleHiddenSystemFiles.vbs"
Предполагается, что вы скопировали скрипт в папку System32 (конечно, можно указать свой путь к скрипту). Можете просто скачать архив с готовыми файлами.
Читатели Андрей и equinox решают аналогичную задачу в Total Commander кнопкой на панели.
В чем разница между скрытыми и системными файлами
Если вы заметили, за показ скрытых и системных файлов в TC отвечает одна настройка, а в проводнике — две. Системные файлы и папки необходимы для нормальной работы операционной системы, а скрытые — просто не отображаются в файловом менеджере. Многие файлы и папки операционной системы имеют оба эти атрибута.
В корне моего профиля программы GIMP и VirtualBox создали четыре служебные папки. Я никогда не захожу в них, поэтому сделал их скрытыми, чтобы не мешали.
Достаточно выделить файлы или папки, и в свойствах установить атрибут «Скрытый».
Раз уж речь зашла об атрибутах, предлагаю остановиться на них подробнее. Тем более, что это пригодится позже.
Атрибуты файлов и папок
Как видно на рисунке выше, в свойствах файлов и папок отображаются только два атрибута – «Скрытый» и «Только чтение».
Как посмотреть атрибуты
Все атрибуты можно увидеть, добавив в файловом менеджере столбец «Атрибуты».
Каждой букве соответствует атрибут:
- R — «Только чтение» (Read-only)
- A — «Архивный» или готов для архивирования (Archived). Подробнее об этом атрибуте я рассказал в комментариях.
- S — «Системный» (System)
- H — «Скрытый» (Hidden)
- I — «Неиндексированное содержимое» (Index)
Кроме того, папки обозначаются буквой D (Directory), а ссылки – буквой L (Link). К ссылкам мы еще обязательно вернемся.
Как изменить атрибуты
С помощью команды attrib можно отображать и изменять атрибуты файлов, на изменение которых у вас есть права. Например, команда
attrib C:\test.txt
показывает, что этот файл системный и скрытый (я предварительно задал эти атрибуты), а также готов для архивирования.
Когда файл является системным, в свойствах невозможно изменить атрибут «Скрытый» — флажок затенен.
Я задал атрибуты файла так:
attrib +S +H C:\test.txt
Чтобы установить атрибут, перед ним нужно поставить плюс, а чтобы снять – минус. В одной команде можно сразу указать несколько атрибутов.
attrib -S -H C:\test.txt
Почему у папок флажок «Только для чтения» имеет три состояния
Если вы посмотрите свойства любой папки, то увидите, что флажок «Только для чтения» не установлен, а заполнен голубым цветом.
Начиная с Windows Vista, флажок «Только для чтения» всегда имеет такой вид.
Если вы:
- установите флажок, все файлы внутри папки станут только для чтения, т.е. их невозможно будет изменить
- снимете флажок, все файлы лишатся этого атрибута
Эти действия эквиваленты команде
attrib +R "C:\test\*.*" /S
где ключ /S обеспечивает обработку файлов во вложенных папках.
В любом случае, когда вы откроете свойства папки в следующий раз, флажок опять будет заполнен цветом. Любопытно, что эти действия никак не отражаются на атрибуте самой папки, который нельзя сменить в свойствах на вкладке «Общие».
Однако его можно задать исключительно для папки все той же командой attrib
attrib +R "C:\test\"
Это никак не повлияет на возможность переименования, удаления папки или записи в нее, потому что Windows игнорирует атрибут в этих случаях.
У папки атрибуты «Только для чтения» и «Системный» лишь указывают проводнику на то, что это особая папка, вид которой изменен с помощью файла desktop.ini.
Например, это папки:
- Документы, Избранное, Шрифты
- любые другие папки, внешний вид которых вы изменяете в свойствах на вкладке «Настройка»
Так, когда вы задаете папке свой значок, Windows автоматически создает скрытый файл desktop.ini и назначает папке атрибут «Только для чтения». Это можно увидеть командой:
attrib "C:\test\"
Подробнее об атрибутах папок «Только для чтения» и «Системный» рассказывается в KB326549, но ее русская версия представляет собой машинный перевод.
Надеюсь, тема атрибутов раскрыта, и самое время перейти к вопросу, который я уже пять лет вижу в форумах клиентских операционных систем.
Как получить доступ к папке “Documents and Settings” в корне диска и похожим папкам в профиле
Вообще, правильнее интересоваться, для чего нужны эти папки. Тогда сразу отпадет вопрос о том, как в них попасть.
Совместимость программ
Начиная с Windows Vista, в системе изменилось расположение пользовательских профилей. Если раньше они хранились в папке %SystemDrive%\Documents and Settings, то сейчас — в %SystemDrive%\Users.
Теперь представьте, что некая старая программа не знает об этом изменении и пытается сохранить данные в профиле пользователя старым добрым способом.
Чтобы программы не «ломались», разработчики Windows предусмотрели автоматическое перенаправление из старого расположения профиля в новое.
Давайте посмотрим, как это работает на практике. Откройте командую строку и попробуйте создать текстовый файл на рабочем столе, будто работая в XP.
echo Hello, User!> "%SystemDrive%\documents and settings\%UserName%\desktop\hello.txt"
Хотя вы не могли попасть в папку Documents and Settings, перенаправление сработало, и файл создался на рабочем столе.
Аналогичную роль играют и многочисленные папки в корне пользовательского профиля (Cookies, Start Menu и т.д.). Они обеспечивают перенаправление данных в имеющиеся пользовательские папки.
Несуществующие папки
Всех этих папок на самом деле не существует. Это просто ссылки, что видно в столбце «Атрибуты».
Выделенные буквы D и L означают папка (Directory) и ссылка (Link). Получается некая папка-ссылка.
Куда ведут эти ссылки? Вообще, в проводнике можно добавить столбец «Цель ссылки», но в данном случае он бесполезен, потому что показывает цель только для символических ссылок. Впрочем, старая добрая команда dir нам все покажет:
cd %userprofile% dir /asd
Первая команда переходит в профиль, а вторая – отображает системные папки (sd), т.е. команда dir оперирует уже знакомыми вам атрибутами.
Во-первых, стало понятно, куда ведут ссылки. Во-вторых, на сцену вышло слово JUNCTION в качестве типа папки.
Соединения (junctions)
Соединения (другое название — точки подключения) заложены на уровне файловой системы NTFS. В контексте темы нашего разговора они делятся на системные и пользовательские.
Системные соединения присутствуют в установочном WIM-образе Windows сразу. Помимо Documents and Settings в корне диска, это папки в корне %SystemDrive%\Users:
- All Users перенаправляет в папку %SystemDrive%\ProgramData, о которой мы еще поговорим
- Public (общие файлы пользователей) и Default (профиль стандартного пользователя) содержат соединяющие ссылки внутри папок
Пользовательские соединения появляются в профиле динамически при создании учетной записи.
Вы можете создать соединения самостоятельно командой mklink. Для эксперимента сначала создайте в корне диска папку test, а затем в командной строке выполните:
mklink /j c:\junction c:\test
Будет создано соединение с именем junction, которое ведет в папку test.
Я уже рассказывал о практическом применении команды mklink на примере создания символической ссылки. Ее можно создать на файл, а также использовать пути UNC – в этом и заключаются основные отличия символической ссылки от соединения.
Что хранится в папке ProgramData
В корне диска есть папка ProgramData, где хранятся данные программ, которые предназначены для всех пользователей системы. Фактически – это замена папки All Users в Windows XP.
Папка ProgramData интересна тем, что служит не только в качестве ловушки для перенаправленных данных, но и сама передает их в другие расположения.
Представьте, что вы установили программу для всех пользователей. У каждого из них на рабочем столе и в меню «Пуск» оказался ярлык программы. В Windows XP это достигалось путем создания ярлыков в папках %AllUsersProfile%\Desktop и %AllUsersProfile%\Start Menu.
Давайте попробуем создать файл на рабочем столе у всех пользователей этим способом.
echo Hello, Users!> "%AllUsersProfile%\desktop\hello-users.txt"
Вы увидите файл у себя на рабочем столе, но реально он расположен в новом месте — %SystemDrive%\Users\Public\Desktop, т.е. на общем рабочем столе.
Недавно на форуме был задан вопрос о подпапке Application Data. Участника смутило, что эта ссылка ведет обратно в корень папки ProgramData.
Неподготовленному человеку это может взорвать мозг :) Но вы-то уже знаете, что данные перенаправляются абсолютно верно – в папку, где теперь хранятся данные программ для всех пользователей.
Опрос
Итак, давайте подведем итог. Мы выяснили, что:
- в корне диска и профиля находится около 50 служебных файлов и папок
- служебные папки перенаправляют данные в другие расположения с помощью соединений файловой системы, обеспечивая совместимость со старыми программами
- когда отображение скрытых и системных файлов включено, становится труднее найти действительно нужные файлы, что замедляет навигацию
- при необходимости можно одним щелчком мыши переключить отображение скрытых и системных файлов
У меня навигация в проводнике происходит быстрее, когда отображение служебных файлов отключено. Я также намеренно скрываю некоторые папки, с которыми не работаю. А как с этим обстоят дела у вас?
У читателей, которые постоянно держат перед глазами скрытые и системные файлы, я очень хочу узнать: зачем вам это нужно?
Наконец, если вы используете соединения или символические ссылки, поделитесь опытом в комментариях!
Результаты голосования утеряны в связи с прекращением работы веб-сервиса опросов.
Коля
Спасибо парни! Прям вообще по могли!!!
Сергей
Спасибо, понял- лучше не эксперементировать. Самое лучшее средство создания копий системы — Acronis TIH или B&Recovery и HDD на 100-120 Гб для 64x- битной Win7.
Артур
В телефоне 2 карты памяти. Одна форматируется и работает. а вторая нет, пишет » вставте 2 карту» Прочитал, скрыто имя 1-й карты. написал это имя на второй Телефон потребовал форматирования и заработал.
Михаил
Отображение этих файлов помогает делать открытия и узнавать новое. Например, то, что Windows создаёт файлы Thumbs.db в папке с картинками или фильмами, если зайти в неё по сети, было для меня сюрпризом. (Кстати, во времена XP было популярно раздавать с официальных сайтов программы, плагины или что-то в этом роде в архиве, где в папке со справкой и картинками лежали Thumbs.db).
Picasa создаёт в папке с редактируемыми фотографиями папку с бэкапами. Я бы и не догадался, что она это делает. Мне даже однажды прислали архив с фотографиями, где в скрытой папке лежали не отредактированные файлы. Отправитель был весьма удивлён.
Другое дело, что, действительно, системные файлы и папки, которые программы насоздавали там, где их не просили, раздражают. Последовав Вашему совету, отключил отображение, добавил пункт в меню и скрыл почти все папки в папке «Мои документы» и в папке профиля — и так светло и свободно стало! Другое дело, что я обязательно пропущу что-то, что могло бы быть интересным и полезным. Думаю, Шерлок не одобрил бы отключение показа скрытых и системных файлов и папок.
Vadim Sterkin
Михаил, Шерлок одобряет :)
Андрей
Сделал весь процесс как надо, мне нужно было найти папку Documents and Settings. После этого как компьютер начал выполнять какую то загрузку…. После непонятной загрузки , я не мог зайти не в одну скрытую папку, ни documents and setting, так как выдавалась одна и та же ошибка » в доступе отказано». Я перезагрузил компьютер и вернул все параметры и галочки на места, после этого половина программ типо Skype(который категорический отказывается открываться) браузера хром и мозила ( были сбиты настройки, которые почему то не восстанавливаются),некоторые игры долго грузятся и после этого выдается таблица «закрыть программу»…
При загрузке компьютера вылезает постоянно много табличек с ошибками… С чем это связанно,я не знаю!!??
Помогите c решением проблемы!) Зарание благодарю за помощь!
Сергей
Вопрос исчерпан более года назад. Спасибо
Денис Сергеевич
Включено отображение скрытых файлов, папок, дисков.
Там сохраняются кэш программ/игр.
Пути, которые мне часто нужны, чтобы вытащить или подправить что-либо:
C:\Users\DENIS\AppData\Local
Реже: C:\ProgramData
Остальные системные настройки не нужны, возможно потому что я только максимум продвинутый пользователь, не назвал бы себя профи, до таких спецов не дотягиваю, хотя разобраться во всём что мне угодно — могём)
Андрей Ходько
Лично в моём компьютере отображение скрытых объектов файловой системы включено всегда и это меня нисколько не раздражает. Более того, в ключевых системных и профильных папках имеющиеся и вновь появляющиеся объекты сгруппированы по датам создания/изменения и другим атрибутам. К основным системным каталогам созданы ярлыки быстрого доступа и хранятся они отдельно. Такая организация позволяет иметь полный или хотя-бы относительный контроль, и знать, что «твориться» в Винде. Ближайший пример реальной пользы: если бы было иначе, буквально вчера мог элементарно запустить почтовый червь-вирус, имеющий атрибут «Скрытый» и иконку, неотличимую от вида папки… Однако, офисным работникам, клеркам, и тем пользователям, кто вовсе не интересуется внутренним устройством Windows, отображение скрытых файлов/папок ни к чему. Они часто и не подозревают об их существовании…
Vadim Sterkin
Я интересуюсь, но мне ни к чему…
Андрей Ходько
Каждому своё
Андрей Ходько
Кстати, я активно использую встроенный в Windows 7 инструмент-навигатор «Рабочий стол» (>>), располагающийся справа на Панели задач (Свойства панели задач -> Панели инструментов -> Рабочий стол). Великолепная, встроенная в систему, фишка! При наведении указателя мыши на ‘Рабочий стол’ -> ‘Компьютер’ можно в считанные секунды попасть в любую директорию. Скрытые объекты файловой системы данный навигатор не отображает, даже если включен показ скрытых файлов/папок. Внимание не рассеивается. Это, несомненно, может порадовать тех, кого раздражает обилие скрытых, но реально имеющихся объектов…
Nikolay
Что-то голосовалка отвалилась, нет возможности ни проголосовать, ни увидеть результаты.