Какие атрибуты и как можно присвоить файлу в командной строке
Обновлено: 07.07.2024
Если открыть свойства любого файла или каталога, в нижней части окошка свойств можно увидеть два чекбокса: «Скрытый» и «Только для чтения». Эти настройки именуются атрибутами. Атрибуты — это некий набор параметров, которые указывают, как именно операционной системе обрабатывать файл. В Windows имеется пять основных типов атрибутов: «Только для чтения», «Скрытый», «Архивный», «Системный» и «Неиндексированное содержимое».
Просматривать, устанавливать и снимать атрибуты можно как из Проводника (ограничено), так и из командной строки. Использование консоли имеет определённые преимущества, так как позволяет устанавливать атрибут «Системный», недоступный в Проводнике. За работу с атрибутами объектов в Windows отвечает команда attrib. Синтаксис её прост.
ATTRIB [R] [A] [S] [H] [I] [путь к объекту] [/S [/D] [/L]]
Буквы R, A, S, H, I устанавливают атрибут, а ключи /S, /D, /L задают набор параметров для обработки. Ключи используются в основном при обработке группы объектов, например, вложенных файлов и каталогов. Добавленные перед буквой параметра знаки «+» и «-» устанавливают и снимают атрибут соответственно.
attrib +r [путь к объекту]
attrib –r [путь к объекту]
Описание основных параметров
Параметр R делает файл доступным только для чтения. Если вы внесёте в файл изменения, а затем попробуете сохранить его, система не позволит это сделать. Вместо этого она предложит сохранить его под другим именем.
attrib +r D:/files/text.txt
Параметр A используется для всех файлов по умолчанию. Указывает он на то, что файл готов к архивированию. Снятие или добавление этого атрибута не играет какой-либо существенной роли в работе операционной системы.
Пример:
attrib -a D:/files/text.txt
Параметр H скрывает файл или папку, делая их невидимыми. Может пригодиться для скрытия разных объектов с целью предотвращения к ним доступа.
Пример:
Первая команда скроет файл text.txt, вторая скроет все объекты в каталоге files (включая сам каталог).
Параметр S указывает Windows, что файл нужно обрабатывать как системный. В Windows такие файлы имеют особый статус. Может устанавливаться пользователем при выполнении различного рода твиков файловой системы, например, при включении функции отображения комментариев к каталогам, по умолчанию недоступной в ОС. Задать этот атрибут можно только через командную строку.
Пример:
attrib +s D:/files/autorun.ini
Примечание: если вы установите для файла атрибут «Системный», а затем попробуете сделать его скрытым, система выдаст ошибку. Точно так же нельзя скрытый файл сделать системным. Если же вам нужно, чтобы файл был и скрытым, и системным, в одной команде нужно выставлять сразу два атрибута.
Пример:
attrib +s +h D:/files/text.txt
Параметр I используется очень редко. Если вы не хотите, чтобы Windows индексировала содержимое некоего файла, можете установить атрибут «Неиндексированное содержимое».
Пример:
attrib +i D:/files/text.txt
Нельзя не отметить, что использование командной строки даёт неоспоримые преимущества при просмотре атрибутов группы файлов. В Проводнике для этого вам бы пришлось открывать свойства каждого файла в отдельности, а в консоли для этого достаточно выполнить такую команду:
Управлять атрибутами файлов и папок в Windows можно не только через графический интерфейс системы. Сделать это можно и через командную строку. Для этого используется команда ATTRIB.
Синтаксис команды attrib :
ATTRIB [+R | -R] [+A | -A ] [+S | -S] [+H | -H] [+I | -I] [имя_файла] [/S [/D] [/L]]
Создадим файл primer.txt в корне диска C и посмотрим его атрибуты:
Обратив внимание на скриншот, вы увидите, что мы находимся в C:\, поэтому полный путь указывать не пришлось. В противном случае команда выглядела бы так:
Далее я буду стараться указывать полные пути в примерах.
Проверяем и видим, что у файла появился нужным нам атрибут:
Теперь операционная система считает, что наш файл является системным, и не рекомендует его удалять:
Аналогично можно менять атрибуты и у папок. Например, у нас есть папка с говорящим названием catalog на диске C. Сделаем её скрытой:
Команда attrib может работать с файлами и папками массово. Для примера посмотрим атрибуты всех файлов в папке C:\catalog:
Как видно из скриншота ниже, команда обработала все файлы по маске.
Можно использовать и более сложные шаблоны. Например, мы хотим сделать скрытыми все bmp-файлы:
attrib +s c:\catalog\. 1.txt
Что, если нам нужно обработать файлы, каталоги и подкаталоги? Используем /S и /D. Обратите внимание, что они относятся к текущему каталогу и подкаталогам, поэтому заранее перейдём в интересующую нас папку:
В C:\catalog есть уже известные нам файлы и папка primer, в которой тоже есть файлы. Посмотрим атрибуты их всех:
Давайте сделаем все файлы и папки скрытыми:
Теперь уберём этот атрибут, но только у файлов:
Команда attrib предназначена для просмотра или изменения атрибутов файлов и папок через командную строку Windows. Данная программа доступна в Windows 10, Windows 7, Windows XP и в более старых версиях Windows. В данной статье мы рассмотрим синтаксис, параметры и примеры использования этой команды.
Синтаксис команды attrib
Синтаксис команды attrib выглядит следующим образом:
Как пользоваться командой attrib
Для того чтобы просмотреть атрибуты для всех файлов в текущей папке достаточно просто выполнить команду « attrib » без каких-либо параметров.
Для того чтобы получить информацию не только о файлах, но и папках, добавляем параметр « /d ».
Для просмотра атрибутов конкретного файла или папки нужно указать их название или полный путь. Если файл или папка содержит пробелы , то название нужно брать в двойные кавычки .
Чтобы добавить какой-либо атрибут нужно указать соответствующий параметр со знаком « плюс ». Например, для того чтобы добавить « Только для чтение » нужно использовать « +r ». Удаление атрибута выполняется аналогичным способом, только со знаком минус.
При добавлении или удалении атрибутов для папок всегда нужно использовать параметр « /d ».
Примеры использования attrib
При необходимости, с помощью команды «attrib» можно добавлять и удалять сразу несколько атрибутов за раз. Ниже приведено несколько примеров такого использования данной команды.
Добавляем атрибуты « Системный », « Скрытый », « Только для чтения » и для файла « c:\file.txt ».
Удаляем атрибуты « Системный », « Скрытый », « Только для чтения» для файла « c:\file.txt ».
Добавляем атрибуты « Системный », « Скрытый », « Только для чтения» для всех файлов в папке « c:\temp2 »
Удаляем атрибуты « Системный », « Скрытый », « Только для чтения» для всех файлов в папке « c:\temp2 »
Добавляем атрибуты « Системный », « Скрытый », « Только для чтения» для всех файлов и папок в папке « c:\temp2 »
Удаляем атрибуты « Системный », « Скрытый », « Только для чтения» для всех файлов и папок в папке « c:\temp2 »
Добавляем атрибуты « Системный », « Скрытый » для всех файлов и папок в папке « c:\temp2 », а также для всех вложенных папок и файлов.
Удаляем атрибуты « Системный », « Скрытый » для всех файлов и папок в папке « c:\temp2 », а также для всех вложенных папок и файлов.
Ошибки при использовании команды attrib
Если при попытке изменить атрибуты вы получаете ошибку « Ошибка в формате параметра », то скорее всего проблема в том, что файл или папка содержит пробелы. Для решения этой проблемы нужно просто взять путь к файлу или папке в двойные кавычки .
Еще одна возможная проблема – ошибка « Доступ запрещен ». В этом случае для изменения атрибутов нужно запустить командную строку с правами администратора либо изменить права доступа к данному файлу.
Вы также можете найти и установить большинство атрибутов файлов и папок в Проводнике. Смотрите внизу этой страницы, если вы заинтересованы в том, чтобы идти по этому пути, а не с помощью командной строки.
Наличие команды Attrib
Команда attrib доступна в командной строке во всех операционных системах Windows, включая Windows 10, Windows 8, Windows 7, Windows Vista, Windows XP, а также более старые версии Windows.
Все автономные средства диагностики и восстановления, доступные в различных версиях Windows, включая расширенные параметры запуска, параметры восстановления системы и консоль восстановления, также включают в себя команду attrib.
Эта команда attrib также доступна в MS-DOS как команда DOS.
Доступность некоторых переключателей команд attrib и другого синтаксиса команд attrib может отличаться в зависимости от операционной системы.
Синтаксис команды Attrib и переключатели
attrib [ + a | -a ] [ + h | -h ] [ + i | -i ] [ + r | -r ] [ + s | -s ] [ + v | -v ] [ + x | -x ] [ диск : ] [ путь ] [ имя файла ] [/s [/d ] [/l ]]
Если вы не уверены, как интерпретировать синтаксис команды attrib, который вы видите выше или показан в таблице ниже, рекомендуется научиться читать синтаксис команды.
Item | Объяснение |
атр | Выполните только одну команду attrib, чтобы увидеть атрибуты, установленные для файлов в каталоге, из которого вы выполняете команду. |
+ а | Устанавливает атрибут файла архива для файла или каталога. |
-a | Очищает атрибут архива. |
+ ч | Устанавливает атрибут скрытого файла для файла или каталога. |
-h | Удаляет скрытый атрибут. |
+ г | Устанавливает атрибут файла, не индексированный по содержимому, для файла или каталога. |
-i | Удаляет атрибут файла, который не индексируется. |
+ г | Устанавливает атрибут файла только для чтения для файла или каталога. |
-r | Удаляет атрибут только для чтения. |
+ s | Устанавливает системный атрибут файла для файла или каталога. |
-s | Очищает системный атрибут. |
+ v | Устанавливает атрибут файла целостности для файла или каталога. |
-v | Очищает атрибут целостности. |
+ X | Устанавливает атрибут файла без очистки для файла или каталога. |
-x | Удаляет атрибут no scrub. |
диск : , путь, имя файла | Это файл ( имя файла , опционально с диском и путь ), каталог ( путь , опционально с диском ) или диском , для которого вы хотите просмотреть или изменить атрибуты. Использование подстановочных знаков разрешено. |
/s | Используйте этот переключатель для выполнения любого отображения атрибута файла или изменений, которые вы вносите в подпапки в любом указанном вами диске и/или пути или в пределах папка, из которой вы выполняете, если вы не указали диск или путь. |
/д | Этот параметр атрибута включает в себя каталоги, а не только файлы, для всего, что вы выполняете. Вы можете использовать /d только с /s . |
/л | Параметр /l применяет все, что вы делаете с помощью команды attrib, к самой символической ссылке, а не к цели символической ссылки. Переключатель /l работает только тогда, когда вы также используете переключатель /s . |
/? | Используйте переключатель справки с командой attrib, чтобы показать подробности о вышеупомянутых параметрах прямо в окне командной строки. Выполнение attrib /? аналогично использованию команды help для выполнения help attrib . |
В консоли восстановления для команды attrib доступны переключатели + c и -c , которые соответственно устанавливают и очищают атрибут сжатого файла.Вне этой области диагностики в Windows XP используйте команду compact для обработки сжатия файлов из командной строки.
Если подстановочный знак разрешен с помощью команды attrib, это означает, что вы можете использовать звездочку ( * ), чтобы применить атрибут к группе файлов. Однако, если это применимо, вы должны сначала очистить системный или скрытый атрибут, прежде чем сможете изменить какие-либо другие атрибуты файла.
Примеры команд Attrib
В приведенном выше примере команда attrib используется для включения атрибута «только для чтения» с использованием параметра + r для каталога secretfolder , расположенного в c: \ Windows \ System .
В этом примере файл config.sys , расположенный в корневом каталоге диска c: , имеет атрибут скрытого файла, очищенный с помощью -h вариант.
На этот раз команда attrib используется для удаления нескольких атрибутов файла из файла bcd , важного файла, который должен работать для запуска Windows. Фактически, выполнение команды attrib, как показано выше, является ключевой частью процесса, описанного в шагах, необходимых для восстановления BCD в Windows.
В приведенном выше примере файлы BAK указывают файлы, для которых уже было выполнено резервное копирование, что означает, что их не нужно снова архивировать/резервировать, следовательно, необходимо удалить атрибут архива.
Чтобы закончить простым примером attrib, он просто отображает атрибуты файла с именем myimage.jpg . Если вы удалите вторую половину и выполните только команду attrib , она отобразит атрибуты для всех файлов в текущем каталоге.
Ошибки команды Attrib
Как и в случае большинства команд в командной строке, не забывайте использовать двойные кавычки вокруг имени папки или файла с пробелами. Если вы забудете сделать это с помощью команды attrib, вы получите ошибку «Неправильный формат параметра -» .
Например, вместо ввода моя папка в командной строке, чтобы показать путь к папке с этим именем, вы должны ввести «моя папка» , чтобы использовать кавычки.
Ошибки команды Attrib, такие как «Отказ в доступе», означают, что у вас недостаточно доступа к файлам, в которые вы пытаетесь внести изменения атрибутов. Получите право собственности на эти файлы в Windows и попробуйте снова.
Изменения в команде Attrib
Параметры команды attrib + i , -i и /l впервые были доступны в Windows Vista и сохранялись в Windows 10.
Переключатели + v , -v , + x и -x для команды attrib доступны только в Windows 7, Windows 8 и Windows 10.
Attrib Связанные Команды
Обычно команда xcopy выполняет атрибут файла после его резервного копирования. Например, переключатель /m команды xcopy отключает атрибут архива после копирования файла.
Точно так же ключ xcopy /k сохраняет атрибут файла только для чтения после его копирования.
Просмотр атрибутов в проводнике
Вы также можете просматривать и управлять атрибутами для файлов и папок в Проводнике, используя обычные кнопки меню. Это может быть предпочтительным для вас, если вы не знакомы с командной строкой.
Сделайте это, щелкнув правой кнопкой мыши по объекту и перейдя на вкладку Свойства > Общие .
Позволяет просматривать, устанавливать или снимать атрибуты файла или каталога, такие как «Только чтение», «Архивный», «Системный» и «Скрытый». Выполненная без параметров команда attrib выводит атрибуты всех файлов в текущем каталоге.
Синтаксис
Параметры
+r Установка атрибута «Только чтение». -r Снятие атрибута «Только чтение». +a Установка атрибута «Архивный». -a Снятие атрибута «Архивный». +s Установка атрибута «Системный». -s Снятие атрибута «Системный». +h Установка атрибута «Скрытый». -h Снятие атрибута «Скрытый». [диск:][путь] имя_файла Задание местонахождения и имени каталога, файла или набора файлов, атрибуты которых требуется просмотреть или изменить. Для обработки группы файлов допускается применение подстановочных знаков (? и *) в параметре имя_файла. /s Выполнение команды attrib и всех параметров командной строки для соответствующих файлов в текущем каталоге и всех его подкаталогах. /d Выполнение команды attrib и всех параметров командной строки для каталогов. /? Отображение справки в командной строке.Заметки
Для просмотра или изменения атрибутов группы файлов можно воспользоваться подстановочными знаками (? и *) в параметре имя_файла. Для изменения атрибутов системных или скрытых файлов вначале требуется снять соответствующие атрибуты.
Атрибут «Архивный» (т. е. параметр +a) используется для отметки файлов, измененных со времени последнего резервного копирования. Этот атрибут используется в команде xcopy. Для получения дополнительных сведений об атрибуте «Архивный» и команде xcopy щелкните ссылку xcopy.
Примеры
Чтобы вывести атрибуты файла News86, расположенного в текущем каталоге, введите следующую команду:
Чтобы назначить атрибут «Только чтение» файлу Report.txt, введите следующую команду:
attrib +r report.txt
Чтобы снять атрибут "Только чтение" с файлов в каталоге \Public\Jones на диске B и всех его подкаталогах, введите следующую команду:
attrib -r b:\public\jones\*.* /s
Предположим, что необходимо передать коллеге диск, содержащий файлы из текущего каталога диска A, за исключением файлов с расширением .bak. Поскольку для копирования файлов с установленным атрибутом «Архивный» может быть использована команда xcopy, необходимо установить этот атрибут для всех файлов, подлежащих копированию. Вначале установите атрибут «Архивный» для всех файлов на диске A, а затем снимите этот атрибут для файлов с расширением .bak. Например, введите следующую команду:
attrib +a a:*.* attrib -a a:*.bak
Теперь для копирования файлов с диска A на диск B воспользуйтесь командой xcopy. Запущенная с параметром /a команда xcopy скопирует только файлы с установленным атрибутом «Архивный». Например, введите следующую команду:
Если требуется снять атрибут Архивный со скопированных файлов, воспользуетесь командой xcopy с параметром /m вместо /a. Например, введите следующую команду:
Для вопросов, обсуждений, замечаний, предложений и т. п. можете использовать раздел форума этого сайта (требуется регистрация).
Новый раздел о средствах командной строки в рамках этого же проекта расположен здесь
Читайте также: