1

В основном я хочу скрыть все файлы с именем:

  • .gitignore
  • Gradle
  • gradle.bat
  • * .iml
  • * .ipr
  • * .iws
  • .classpath
  • .project

Но я хочу, чтобы они были скрыты по умолчанию для любого моего проекта, где бы они ни находились на жестком диске, и не устанавливая атрибут скрытого для любого из этих файлов.

Мне просто нужно правило или что-то вроде «Не показывать системные файлы», но правило, которое можно настроить, чтобы я мог сказать, какие файлы я хочу скрыть.

Примечание: я использую только Windows Explorer для навигации.

2 ответа2

2

Мне нравится ответ Дейва Рука, и он придумал более простое решение ...

Для каждого требования просто перейдите на корневой диск и введите

attrib (filetype) /S +h

например

attrib *.ipr /S +h

сделает все ipr-файлы скрытыми, во всех подкаталогах.

Тем не менее, ни этот, ни ответ Дейва Рука не отвечают вашему требованию "автоматического" и особенно не соответствуют требованию не устанавливать скрытый флаг.

Если вы хотите скрыть их без установки скрытого атрибута, я могу думать только о том, чтобы сделать это через расширение оболочки, чтобы скрыть его от проводника, но это очень опасная вещь, поскольку это представляет угрозу безопасности для ваша машина / вы начинаете попадать в царство руткитов .... Вам нужно будет самостоятельно что-то запрограммировать, а затем добавить в реестр.

1

Вы можете сделать это с помощью пакетного скрипта - http://www.xxcopy.com/xxcopy06.htm

Теоретически, вы будете перебирать системные файлы в поисках определенного расширения и, когда найдете, измените атрибут. Хотя атрибут H скрытый!

Есть много учебных пособий о том, как проходить через внутри пакетного сценария. Этот код ищет файлы с определенным расширением, а затем копирует их. Возможно, вы сможете отредактировать его, удалить часть копирования и добавить код атрибута.

Непроверенный, но что-то вроде (вам пришлось бы запускать его много раз, изменяя set ftype = *.расширение

set dSource=C:\Main directory\sub directory
set dTarget=D:\Documents
set fType=*.doc
for /f "delims=" %%f in ('dir /a-d /b /s "%dSource%\%fType%"') do (
    attrib /d +s +h "%%f"
)

Если приведенный выше код не работает, то вам, возможно, придется скопировать файл самому себе (перезаписать себя), а при копировании изменить тип атрибута.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .