Скрытие неизвестных файлов в пакетных файлах

Эй, ребята, мне нужно знать, как скрыть файл, имя которого я не знаю.

например, у меня есть 6 папок с именем 1-6, но я думаю, что их назвали af. и их каталог - C:\users\all users\bond.

как бы я поступил так?

Мне не нужно скрывать каталог, в котором находятся файлы, мне нужно иметь возможность войти в каталог и скрыть файлы внутри.

вот единственное, о чем я могу думать:

@echo off
cd C:\users\all users\bond
attrib +h +s %filename% *
echo.
echo files successfully hidden.
pause
exit

1 ответ

Решение

Вы можете перебирать папки.

for Команда может принимать список имен папок или групповых символов.

@echo off
cd /d c:\users\all users\bond
for /d %%D in (FOLDER NAMES GO HERE) do (
    pushd %%D
    attrib +h *.*
    popd
    )
exit /b

Если вам нужно обработать все папки в текущем каталоге, просто поставьте * там:

...
for /d %%D in (*) do (
...

Вы также не можете перейти в родительский каталог, но указать его в for цикл вместо (обратите внимание на кавычки вокруг маски):

@echo off
for /d %%D in ("c:\users\all users\bond\*") do (
...

Точно так же вы могли бы пропустить переход в и из каждого подкаталога и вместо этого указать путь в attrib команда.

Таким образом, приведенный выше скрипт можно переписать так:

@echo off
for /d %%D in ("c:\users\all users\bond\*") do attrib +h "%%D\*"
exit /b
Другие вопросы по тегам