Меню

Как сделать файлы только для чтения в командной строке

Изменить атрибуты файлов в командной строке

Если открыть свойства любого файла или каталога, в нижней части окошка свойств можно увидеть два чекбокса: «Скрытый» и «Только для чтения». Эти настройки именуются атрибутами. Атрибуты — это некий набор параметров, которые указывают, как именно операционной системе обрабатывать файл. В 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 используется для всех файлов по умолчанию. Указывает он на то, что файл готов к архивированию. Снятие или добавление этого атрибута не играет какой-либо существенной роли в работе операционной системы.

Пример:

Параметр H скрывает файл или папку, делая их невидимыми. Может пригодиться для скрытия разных объектов с целью предотвращения к ним доступа.

Пример:

Первая команда скроет файл text.txt, вторая скроет все объекты в каталоге files (включая сам каталог).

attrib +a D:/files/text.txt
attrib +h D:/files/\»*\» /s /d

Параметр S указывает Windows, что файл нужно обрабатывать как системный. В Windows такие файлы имеют особый статус. Может устанавливаться пользователем при выполнении различного рода твиков файловой системы, например, при включении функции отображения комментариев к каталогам, по умолчанию недоступной в ОС. Задать этот атрибут можно только через командную строку.

Пример:

attrib +s D:/files/autorun.ini

Примечание: если вы установите для файла атрибут «Системный», а затем попробуете сделать его скрытым, система выдаст ошибку. Точно так же нельзя скрытый файл сделать системным. Если же вам нужно, чтобы файл был и скрытым, и системным, в одной команде нужно выставлять сразу два атрибута.

Пример:

attrib +s +h D:/files/text.txt


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

Пример:

attrib +i D:/files/text.txt

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


При этом в окно командной строки будет выведен список всех файлов каталога files (включая вложенные папки) с указанием их атрибутов. Для получения атрибутов большого количества файлов можно использовать перенаправление. Например, команда attrib d:/\»*\» d:/log.txt /s обработает все файлы диска D и выведет имена с атрибутами в текстовый лог log.txt.

Один комментарий

Как снять атрибут \»только чтения\» к папке C:\\Server

Источник

Как установить на файл атрибут только для чтения?

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

Значит для чего вообще эта штука может понадобится? Честно говоря я не знаю где это может быть нужно, но вот например файл hosts (это системный важный файл, находится тут: %SystemRoot%\system32\drivers\etc) имеет атрибут только для чтения и это сделано в целях безопасности, чтобы в этот файл ничего нельзя было записать. Хотя я не уверен насколько это сильная защита. В общем еще раз, если поставить атрибут только для чтения, то файл можно будет ТОЛЬКО считать с диска, записать в него ничего уже не получится. Ну, надеюсь что все понятно

Читайте также:  Как сделать так чтобы твой голос стал красивым

На системном диске C:\ я создал для теста пустой текстовый файл test.txt, сейчас я покажу как поставить этому файлу атрибут только для чтения. Итак, смотрите, вот сам файл:

Теперь нужно зайти в его свойства, для этого нажимаете правой кнопкой по нему и там выбираете в менюхе последний пункт Свойства:

Потом появится окошко Свойства, вот в этом окошке вам нужно поставить галочку на только чтение:

Все, потом нажимаете ОК и все, у вас файл уже будет только для чтения. Ну что, сложно? Вот и я думаю что нет! Теперь смотрите, вот я его открыл и написал там слово:

Теперь я его закрываю, то есть нажимаю на крестик, появляется такое сообщение:

Ну, я тут нажал кнопку Сохранить… И вот ребята, из-за того что стоит атрибут только для чтения, то у меня выскочило такое окошко:

Это чтобы сохранить изменения. Но сохранить можно только в другом файле, ведь в свойствах test.txt стоит атрибут только для чтения, понимаете что это за прикол? Но самое интересное, что если я в этом окошке выберу файл test.txt, и нажму кнопку Сохранить, ну чтобы его перезаписать, то у меня сперва появилось такое сообщение:

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

Ну то есть я думаю что вам все понятно, да? Если стоит атрибут только для чтения, то в файл реально ничего нельзя записать, все работает

Но можно задать атрибут и очень крутым способом, это при помощи командной строки! Я об этом напишу сейчас, вдруг вам пригодится то, а? Ну а вдруг? В общем смотрите, сначала вызываем командную строку, то есть зажимаем кнопки Win + R и пишем в окошке Выполнить такую команду:

Потом нажали ОК, после чего появится вот такое черное окно, это и есть командная строка:

А вот и команда, которая нужна чтобы задать атрибут:

Чтобы узнать как она работает, то в командной строе нужно так набрать:

Потом нажать энтер и у вас будет такой результат:

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

Я вот тоже сейчас попробую задать атрибут через командную строку, вот я вставил команду:

Нажал потом энтер и вот результат:

То есть результата то и по сути нету! Думаете ошибка? Нет ребята, это не ошибка, это как раз таки ее отсутствие, а значит все прошло нормалек. Я потом проверил, таки да, атрибут только чтение установился. Вы мне скажите, йолки палки, да ведь ты его уже выше поставил вручную! Нет ребята, я перед тем как поставить его через командную строку, то я пошел в свойства и снял галочку! Так что тут все четко

Теперь, основываясь на этой команде, можно сделать и другие. Ну вот например буква R это атрибут для чтения, верно? Ну вот, а буква A это атрибут архивный, буква S это системный, буква H это скрытый, буква I задает атрибут неиндексированное содержимое, ну то есть чтобы этот файл не индексировался там где-то, короче это типа для того чтобы поиск был быстрый и все такое, думаю вы поняли. Ну и ключи там еще есть всякие как видите. Но как пользоваться ключами и вообще как например задать атрибут сразу нескольким файлам? Тут тоже все просто! Я создал папку test, в ней есть файл test.txt и еще одна папка test, в которой тоже есть файл test.txt, ну вот так я сделал, но зачем? Это ребятки для примера, теперь как сделать так, чтобы в папке test все что внутри имело атрибут… ну пусть будет скрытый. Как? Очень просто, нужно написать в командную строку вот эту команду:

ATTRIB +H C:\test\*.* /S /D

Вот такая вот команда ребята! Я только что проверил, все работает, это правильная команда. В итоге у меня в папке test было все пусто, потому что все файлы и папки были скрыты, а у меня отключен показ скрытых файлов и папок. Но давайте немного разберемся с командой, что я там написал? Буква H (наверно от слова Hidden) указывает, что нужно задавать атрибут скрытый. Потом идет путь к папке, а в конце пути идет такое:

Читайте также:  Как сделать тетиву для арбалета своими руками видео

Вы наверно подумаете, что за дичь? А это означает что в папке нужно обрабатывать все файлы, которые имеют название * и расширение *, но сами эти звездочки, то они означают как бы любое значение. Вообще эти звездочки это называется типа маска, ну есть такое. Дальше идет такое как /S, это означает что обрабатывать нужно все файлы с указанным именем, а так как мы указали *.*, то обработаны будут все файлы. Ну и чтобы еще были обработаны папки, то для этого я добавил ключ /D, ну что ребята, все понятно или я тут немного запутано все написал? Ну, надеюсь что все таки вам тут все понятно!

Ой, еще самое главное забыл вам написать, вы в команде видите плюсик? Ну так вот, тот плюсик, это чтобы УСТАНОВИТЬ атрибут! А чтобы СНЯТЬ атрибут то нужно ставить МИНУС! Вот блина, как я мог забыть и не написать об этом? Капец!

Ребята, на этом все. Опять же скажу, что надеюсь что все вам тут было понятно, ну а если что-то не так, ну то уж извините, что я могу поделать, я видимо как-то странно обьясняю.. Удачи вам в жизни и чтобы у вас всегда было отличное настроение

Добавить комментарий Отменить ответ

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

Источник

Изменение атрибутов файлов и каталогов через командную строку Windows

Управлять атрибутами файлов и папок в Windows можно не только через графический интерфейс системы. Сделать это можно и через командную строку. Для этого используется команда ATTRIB.

Синтаксис команды attrib :

+ — добавление атрибута;

— удаление атрибута;

R — атрибут «Только чтение»;

A — атрибут «Архивный»;

S — атрибут «Системный»;

H — атрибут «Скрытый»;

I — атрибут «Неиндексированное содержимое»;

/S — обработка файлов с указанными именами в текущем каталоге и подкаталогах;

/D — обработка файлов и каталогов;

/L — работать с атрибутами символической ссылки, но не целевого объекта (файла или каталога) это ссылки.

Создадим файл primer.txt в корне диска C и посмотрим его атрибуты:

Обратив внимание на скриншот, вы увидите, что мы находимся в C:\, поэтому полный путь указывать не пришлось. В противном случае команда выглядела бы так:

Далее я буду стараться указывать полные пути в примерах.

Команда вывела, что файл имеет атрибут A, т.е. «архивный».

Допустим, мы хотим добавить файлу атрибут «только чтение». Почему нет?

Проверяем и видим, что у файла появился нужным нам атрибут:

Хочу обратить ваше внимание на то, что за раз можно добавить и удалить несколько атрибутов. Давайте уберём только что поставленный атрибут «только чтение» и добавим атрибуты «скрытый» и «системный»:

Теперь операционная система считает, что наш файл является системным, и не рекомендует его удалять:

Аналогично можно менять атрибуты и у папок. Например, у нас есть папка с говорящим названием catalog на диске C. Сделаем её скрытой:

Команда attrib может работать с файлами и папками массово. Для примера посмотрим атрибуты всех файлов в папке C:\catalog:

Допустим, что мы хотим добавить всем этим файлам атрибут «только чтение»:

Как видно из скриншота ниже, команда обработала все файлы по маске.

Можно использовать и более сложные шаблоны. Например, мы хотим сделать скрытыми все bmp-файлы:

Или поставить атрибут «системный» файлам с расширением txt, чьё имя состоит из шести знаков, причём шестым должен обязательно быть «1», а первые пять могут быть любыми:

attrib +s c:\catalog\. 1.txt

Что, если нам нужно обработать файлы, каталоги и подкаталоги? Используем /S и /D. Обратите внимание, что они относятся к текущему каталогу и подкаталогам, поэтому заранее перейдём в интересующую нас папку:

В C:\catalog есть уже известные нам файлы и папка primer, в которой тоже есть файлы. Посмотрим атрибуты их всех:

Читайте также:  Как сделать стаж водителя в трудовой книжке задним числом

Давайте сделаем все файлы и папки скрытыми:

Как видите, изменить атрибуты файла C:\catalog\file_1.txt нам не удалось, потому что ранее мы сделали этот файл системным. А вот всё остальное содержимое получило атрибут «скрытый».

Теперь уберём этот атрибут, но только у файлов:

На скриншоте видно, что у папки C:\catalog\primer атрибут «скрытый» остался, а вот файлы его «потеряли». Изменить атрибуты системного файла C:\catalog\file_1.txt нам снова не удалось, но там атрибута «скрытый» и не было.

Источник

attrib attrib

Отображает, устанавливает или удаляет атрибуты, назначенные файлам или каталогам. Displays, sets, or removes attributes assigned to files or directories. Если используется без параметров, attrib отображает атрибуты всех файлов в текущем каталоге. If used without parameters, attrib displays attributes of all files in the current directory.

Синтаксис Syntax

Параметры Parameters

Параметр Parameter Описание Description
<+|->r Задает ( + ) или очищает ( ) атрибут файла, доступного только для чтения. Sets (+) or clears () the Read-only file attribute.
<+\|->a Задает ( + ) или очищает ( ) атрибут файла архива. Sets (+) or clears () the Archive file attribute. Этот набор атрибутов помечает файлы, измененные со времени последнего резервного копирования. This attribute set marks files that have changed since the last time they were backed up. Обратите внимание, что команда xcopy использует атрибуты архива. Note that the xcopy command uses archive attributes.
<+\|->s Задает ( + ) или очищает ( ) атрибут системного файла. Sets (+) or clears () the System file attribute. Если файл использует этот набор атрибутов, необходимо очистить атрибут, прежде чем можно будет изменить другие атрибуты файла. If a file uses this attribute set, you must clear the attribute before you can change any other attributes for the file.
<+\|->h Задает ( + ) или очищает ( ) атрибут скрытого файла. Sets (+) or clears () the Hidden file attribute. Если файл использует этот набор атрибутов, необходимо очистить атрибут, прежде чем можно будет изменить другие атрибуты файла. If a file uses this attribute set, you must clear the attribute before you can change any other attributes for the file.
<+\|->i Задает ( + ) или очищает ( ) атрибут файла не индексировано в содержимом. Sets (+) or clears () the Not Content Indexed file attribute.
[ :][

][ ] Указывает расположение и имя каталога, файла или группы файлов, для которых необходимо отобразить или изменить атрибуты. Specifies the location and name of the directory, file, or group of files for which you want to display or change attributes.

Вы можете использовать параметр ? You can use the ? и * подстановочных знаков в параметре filename для просмотра или изменения атрибутов группы файлов. and * wildcard characters in the filename parameter to display or change the attributes for a group of files. /s /s Применяет атрибуты attrib и любые параметры командной строки для сопоставления файлов в текущем каталоге и всех его подкаталогах. Applies attrib and any command-line options to matching files in the current directory and all of its subdirectories. /d /d Применяет атрибуты attrib и любые параметры командной строки к каталогам. Applies attrib and any command-line options to directories. /l /l Применяет атрибуты attrib и любые параметры командной строки к символической ссылке, а не к целевому объекту символьной ссылки. Applies attrib and any command-line options to the Symbolic Link, rather than the target of the Symbolic Link. /? /? Отображение справки в командной строке. Displays help at the command prompt.

Примеры Examples

Чтобы отобразить атрибуты файла с именем News86, расположенного в текущем каталоге, введите: To display the attributes of a file named News86 that is located in the current directory, type:

Чтобы присвоить атрибуту только для чтения файл с именем report.txt, введите: To assign the Read-only attribute to the file named report.txt, type:

Чтобы удалить атрибут «только для чтения» из файлов в общедоступном каталоге и его подкаталогах на диске в диске b:, введите: To remove the Read-only attribute from files in the public directory and its subdirectories on a disk in drive b:, type:

Источник

Adblock
detector