Главная

Категории:

ДомЗдоровьеЗоологияИнформатикаИскусствоИскусствоКомпьютерыКулинарияМаркетингМатематикаМедицинаМенеджментОбразованиеПедагогикаПитомцыПрограммированиеПроизводствоПромышленностьПсихологияРазноеРелигияСоциологияСпортСтатистикаТранспортФизикаФилософияФинансыХимияХоббиЭкологияЭкономикаЭлектроника






Условные обозначения форматирования


Формат Значение
Курсив Сведения, вводимые пользователем
Полужирный Элементы, вводимые без изменений
Многоточие (...) Параметр может быть введен в командной строке несколько раз
В квадратных скобках ([]) Необязательные элементы
В фигурых скобках ({}); варианты, разделенные вертикальной линией (|), пример: {even|odd} Набор вариантов, из которых необходимо выбрать один
Шрифт Courier Выходные данные программы

For

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

Синтаксис

for {%переменная|%%переменная} in (множество) doкоманда [ПараметрыКоманднойСтроки]

Параметры

{%переменная|%%переменная}

Обязательный параметр. Замещаемый параметр. Используйте %переменная для выполнения команды for из командной строки. Используйте %%переменная для выполнения команды for в пакетном файле. Переменные учитывают регистр и могут быть представлены со значением альфа, например, %A, %B или %C.

(множество)

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

команда

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

ПараметрыКоманднойСтроки

Задает Параметры командной строки, которые используются с указанной командой.

/?

Отображение справки в командной строке.

Заметки

  • Использование программы for

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

  • Использование параметров командной строки пакетного файла

Перечисленные ниже атрибуты применяются к команде for.

    • В команде for переменная %%переменная (или %%переменная) будет заменяться текстовой строкой из заданного параметра множество, пока параметр команда не обработает все файлы этого множества.
    • Имена параметров переменная команды for учитывают регистр буквы, они являются глобальными и одновременно может быть активно не больше 52 переменных.
    • Для обозначения параметра переменная можно использовать любые символы, кроме цифр 0–9, чтобы не было конфликта с параметрами пакетных файлов %0%9. Для простых пакетных файлов вполне достаточно обозначений с одним символом, например %%f.
    • В сложных пакетных файлах могут быть использованы и другие обозначения для параметра переменная.
  • Задание множества файлов

Параметр множество может представлять группу файлов или несколько групп файлов. Для задания групп файлов можно использовать подстановочные знаки (* и ?). Следующие множества файлов являются допустимыми:

(*.doc)

(*.doc *.txt *.me)

(jan*.doc jan*.rpt feb*.doc feb*.rpt)

(ar??1991.* ap??1991.*)

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

  • Использование ключевых слов in и do

In и do не являются параметрами, но они требуются для работы команды for. Если какое-то из слов пропущено, на экран будет выведено сообщение об ошибке.

  • Использование дополнительных форм команды for

Если расширения командного процессора разрешены (по умолчанию), то поддерживаются следующие дополнительные формы команды for.

    • Только каталоги

Если параметр множество содержит подстановочные знаки (* и ?), команда, указанная в параметре команда, выполняется для каждого каталога (кроме множества файлов в указанном каталоге), совпадающего с параметром множество. Используется следующий Синтаксис.

for /D {%% | %}переменная in (множество) doкоманда [ПараметрыКоманднойСтроки]

    • Рекурсивная

Проходит по дереву каталогов с корнем в [диск:]путь, выполняя инструкцию for для каждого каталога в дереве. Если после ключа /R не задан каталог, предполагается текущий каталог. Если параметр множество задано одной точкой (.), то команда просто перечислит каталоги в дереве. Используется следующий Синтаксис.

for /R [[диск :]путь] {%% | %}переменная in (множество) doкоманда [ПараметрыКоманднойСтроки]

    • Итерация диапазона значений

Используйте переменную итерации для установки начального значения (НачальноеЗначение#), а затем перемещайтесь по диапазону значений, пока значение не превысит конечное значение множества (КонечноеЗначение#). /L выполнит итерацию, сравнив параметр НачальноеЗначение# с параметром КонечноеЗначение#. Если параметрНачальноеЗначение# меньше параметра КонечноеЗначение#, то выполняется команда. Когда переменная итерации превысит параметр КонечноеЗначение#, командная оболочка покидает цикл. Также можно использовать отрицательный параметр шаг# для перемещения в диапазоне убывающих значений. Например, (1,1,5) создает последовательность «1 2 3 4 5», а (5,-1,1) создает последовательность «5 4 3 2 1». Используется следующий Синтаксис.

for /L {%% | %}переменная in (НачальноеЗначение#,шаг#,КонечноеЗначение#) doкоманда [ПараметрыКоманднойСтроки]

    • Итерация и разбор файлов

Разбор файлов следует использовать для обработки вывода команды, строк и содержимого файла. Используйте переменные итерации для определения содержимого или строк, которые требуется проверить. Параметр КлючевыеСловаРазбора используется для изменения разбора. Используйте параметр КлючевыеСловаРазбора маркер для указания маркеров, которые воспринимаются как переменные итерации. Примечание. Без параметра маркера ключ /F проверяет только первый маркер.

Разбор файлов состоит в чтении вывода, строки или содержимого файла, разбиении его на отдельные строки текста и разборе каждой строки на ноль или маркеры. Цикл программы for затем называется с переменной итерации, установленной в маркер. По умолчанию /F передает первый отделенный пробелом элемент из каждой строки каждого файла. Пустые строки пропускаются. Используется также другой Синтаксис.

for /F ["КлючевыеСловаРазбора"] {%% | %}переменная in (МножествоИменФайлов) doкоманда [ПараметрыКоманднойСтроки]

for /F ["КлючевыеСловаРазбора"] {%% | %}переменная in ("СимвольнаяСтрока") doкоманда [ПараметрыКоманднойСтроки]

for /F ["КлючевыеСловаРазбора"] {%% | %}переменная in ('команда') doкоманда [ПараметрыКоманднойСтроки]

Аргумент МножествоИменФайлов задает одно или несколько имен файлов. Каждый файл открывается, считывается и обрабатывается до перехода к следующему файлу в аргументе МножествоИменФайлов. Чтобы переопределить стандартное поведение разбора, укажите параметр "КлючевыеСловаРазбора". Это строка, заключенная в кавычки, которая содержит одно или несколько ключевых слов для указания различных режимов разбора.

Если используется параметр usebackq, используйте один из приведенных ниже Синтаксисов:

for /F ["usebackqКлючевыеСловаРазбора"] {%% | %}переменная in ("МножествоИменФайлов") doкоманда [ПараметрыКоманднойСтроки]

for /F ["usebackqКлючевыеСловаРазбора"] {%% | %}переменная in ('СимвольнаяСтрока') doкоманда [ПараметрыКоманднойСтроки]

for /F ["usebackqКлючевыеСловаРазбора"] {%% | %}переменная in (`команда`) doкоманда [ПараметрыКоманднойСтроки]

В приведенной ниже таблице перечислены ключевые слова разбора, которые используются для параметра КлючевыеСловаРазбора.

Ключевое слово Описание
eol=c Задает символ конца строки (только один символ).
skip=n Задает число строк, пропускаемых в начале файла.
delims=xxx Задает набор разделителей. Заменяет набор разделителей по умолчанию, состоящий из пробела и символа табуляции.
tokens=x,y,m-n Задает элементы, передаваемые из каждой строки в тело цикла for при каждой итерации. В результате размещаются дополнительные имена переменных. Форма m-n задает диапазон, указывающий элементы с m-го по n-ый. Если последним символом строки tokens= является звездочка (*), то размещается дополнительная переменная, в которую помещается остаток строки после разбора последнего элемента.
usebackq Задает возможность использования кавычек для имен файлов в параметре МножествоИменФайлов. Задает исполнение строки, заключенной в обратные кавычки, как команды, а строки в одиночных кавычках — как команды в символьной строке.
    • Подстановка переменных

Были расширены модификаторы подстановок для ссылок на переменные в for. Приведенная ниже таблица перечисляет варианты синтаксических конструкций (на примере переменной I).

Переменная с модификатором Описание
%~I Расширение %I, которое удаляет окружающие кавычки ("").
%~fI Расширение %I до полного имени пути.
%~dI Замена %I именем диска.
%~pI Замена %I на путь.
%~nI Замена %I одним именем файла.
%~xI Замена %I расширением имени файла.
%~sI Замена путем, содержащим только короткие имена.
%~aI Замена %I атрибутами файла.
%~tI Замена %I временем модификации файла.
%~zI Замена %I размером файла.
%~$PATH:I Поиск в каталогах, перечисленных в переменной среды PATH, и замена %I полным именем первого найденного файла. Если переменная среды не определена или поиск не обнаружил файлов, модификатор выдает пустую строку.

Приведенная ниже таблица перечисляет комбинации модификаторов, которые можно использовать для получения более сложных результатов.

Переменная с объединенными модификаторами Описание
%~dpI Замена %I именем диска и путем.
%~nxI Замена %I именем файла и расширением.
%~fsI Замена %I полным именем пути с короткими именами.
%~dp$PATH:I Поиск в каталогах, перечисленных в переменной среды PATH, и замена %I именем диска и путем первого найденного файла.
%~ftzaI Замена %I строкой, аналогичной результату работы программы dir.

В приведенных выше примерах %I и PATH могут быть заменены другими допустимыми значениями. Допустимое имя переменной for прекращает %~ syntax.

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

  • Разбор строки

Конструкция for /F может быть использована непосредственно для строки. Для этого поместите параметр МножествоИменФайлов между скобками в одиночные кавычки ('МножествоИменФайлов'). Параметр МножествоИменФайлов будет воспринят как одиночная строка ввода из файла и будет разобран.

  • Разбор вывода

Команду for /F можно использовать для разбора вывода команды. Для этого поместите параметр МножествоИменФайлов между скобками в обратные кавычки. Он будет воспринят как командная строка, которая передается дочернему интерпретатору командной строки Cmd.exe, а результаты работы команды помещаются в памяти и разбираются, как если бы они являлись файлом.

Примеры

В пакетных файлах используется следующий Синтаксис для команды for:

for %%переменная in (множество) doкоманда [ПараметрыКоманднойСтроки]

Чтобы отобразить содержимое всех файлов, имеющих разрешение .doc или .txt, в текущем каталоге с помощью заменяемой переменной %f, введите следующую команду:

for %f in (*.doc *.txt) do type %f

В предыдущем примере каждый файл с расширением .doc или .txt в текущем каталоге будет подставляться вместо переменной %f, пока не будет выведено содержимое всех файлов. Чтобы использовать данную команду в пакетном файле, следует заменить все вхождения %f на %%f. В противном случае переменная игнорируется, и отображается сообщение об ошибке.

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

for /F "eol=; tokens=2,3* delims=," %i in (myfile.txt) do @echo %i %j %k

Данная команда производит разбор каждой строки в файле Myfile.txt, игнорируя строки, начинающиеся с точки с запятой, и передает второй и третий элементы из каждой строки в тело цикла команды FOR. Элементы разделяются запятыми и/или пробелами. Тело инструкции FOR использует %i для получения второго элемента, %j для получения третьего элемента и %kдля получения оставшихся элементов в строке. Если имена файлов содержат пробелы, их следует заключать в кавычки (например, "ИмяФайла"). Для использования кавычек необходима команда usebackq. В противном случае кавычки рассматриваются как определение символьной строки для разбора.

Переменная %i объявлена явно в инструкции FOR, а %j и %k объявлены неявно с помощью tokens=. С помощью tokens= можно указать до 26 элементов, если это не вызовет попытки объявить переменную с именем, большим буквы "z" или "Z".

Для разбора вывода команды с помощью помещения параметра МножествоИменФайлов в скобки можно использовать следующую команду:

for /F "usebackq delims==" %i IN (`set`) DO @echo %i

В данном примере перечисляются имена переменных среды в текущем окружении.

Forcedos

Запуск заданной программы в подсистеме MS-DOS. Эта команда необходима для тех программ MS-DOS, которые не распознаются системой Microsoft Windows XP.

Синтаксис

forcedos [/dкаталог] ИмяФайла [Параметры]

Параметры

/d каталог

Задает текущий каталог для запускаемой программы.

ИмяФайла

Обязательный параметр. Задает программу, которая будет запущена. Если файл программы не находится в текущем каталоге, необходимо задать имя каталога и диска.

Параметры

Задает Параметры, которые будут переданы программе.

/?

Отображает справку в командной строке.

Заметки

  • Некоторые программы MS-DOS не распознаются системой Microsoft Windows XP как программы MS-DOS. Для запуска таких программ служит команда forcedos.
  • Все программы, запускаемые командой forcedos, открываются как приложения MS-DOS.

Примеры

Чтобы запустить программу Myprog из каталога \Oldapps и иметь возможность использовать каталог \Reports, введите следующую команду:

forcedos /d reports \oldapps\myprog

Format

Форматирование диска в заданном дисководе для использования системой Windows.

Синтаксис

format том [/fs:ФайловаяСистема] [/v:метка] [/q] [/a:размер] [/c] [/x]

format том [/v:метка] [/q] [/f:размер]

format том [/v:метка] [/q] [/t:дорожки /n:сектора]

format том [/v:метка] [/q]

format том [/q]

Параметры

том

Задает точку подключения, имя тома или имя диска, который необходимо отформатировать. Если никакие из следующих параметров командной строки не заданы, команда formatбудет использовать тип тома для определения параметров форматирования диска по умолчанию.

/fs:ФайловаяСистема

Тип файловой системы, которая будет создана на диске: FAT, FAT32 или NTFS. Гибкие диски могут использовать только файловую систему FAT.

/v:метка

Задает метку тома. Если параметр командной строки /v пропущен или использован без задания метки, команда format выведет запрос для ввода метки тома после завершения форматирования. Чтобы отключить вывод запроса для ввода метки, введите параметр со следующим Синтаксисом: /v:. Если с помощью команды format форматируется несколько дисков, всем дискам будет присвоена одна метка тома. Чтобы получить дополнительные сведения о метках томов, выберите Dir, Label и Vol из списка в ссылке "См. также".

/a:размер

Задает размер блоков выделения дискового пространства для систем FAT, FAT32 или NTFS. Если параметр размер не задан, он будет определен исходя из размера диска. В приведенной ниже таблице перечислены допустимые значения параметра размер.

Значение Описание
Кластеры по 512 байта.
Кластеры по 1024 байта.
Кластеры по 2048 байта.
Кластеры по 4096 байта.
Кластеры по 8192 байта.
16K Кластеры по 16 Кбайт.
32K Кластеры по 32 Кбайт.
64K Кластеры по 64 Кбайт.

/q

Выполняет быстрый формат. Удаляет таблицу файлов и корневой каталог ранее отформатированного тома без поиска поврежденных секторов. Параметр командной строки /qследует использовать только для форматирования дисков, которые находятся в хорошем состоянии.

-f:размер

Задает емкость гибкого диска, под которую он будет отформатирован. По возможности используйте данный параметр параметр командной строки вместо параметров /f и /n.Windows допустимыми являются следующие значения размера:

1440, 1440k, 1440kb, 1.44, 1.44m, 1.44mb
1,44 Мб, двухсторонний 3,5-дюймовый диск с четверной плотностью

/t:дорожки

Задает количество дорожек на диске. По возможности используйте параметр командной строки /f вместо этого параметра командной строки. Если используется параметр командной строки /t, необходимо также использовать параметр /n. Указанные два параметра командной строки предлагают альтернативный способ задания размера форматируемого диска. Параметр командной строки /f невозможно использовать с параметром /t.

/n:сектора

Задает количество секторов на дорожке. По возможности используйте параметр командной строки /f вместо этого параметра командной строки. Если используется параметр командной строки /n, необходимо также использовать параметр /t. Указанные два параметра командной строки предлагают альтернативный способ задания размера форматируемого диска. Параметр командной строки /f невозможно использовать с параметром /n.

/c

Только для NTFS. Файлы, создаваемые на новом диске, будут по умолчанию сжиматься.

/x

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

/?

Отображает справку в командной строке.

Заметки

  • Использование команды format на консоли восстановления

Команда format с другими параметрами доступна на консоли восстановления.

  • Привилегии администратора

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

  • Использование команды format

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

  • Ввод метки тома

После того, как гибкий диск будет отформатирован, команда format выведет на экран следующий запрос:

Метка тома (11 символов, ENTER - метка не нужна)?

Метка тома может состоять максимум из 11 символов (считая пробелы). Если ввод метки тома не требуется, следует просто нажать ENTER. Чтобы получить сведения о метках томов, выберите label из списка в ссылке "См. также".

  • Форматирование жестких дисков

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

ВНИМАНИЕ, ВСЕ ДАННЫЕ НА НЕСЪЕМНОМ ДИСКЕ
x БУДУТ УНИЧТОЖЕНЫ!
Приступить к форматированию [Y(да)/N(нет)]?_

Для форматирования жесткого диска следует нажать Y; для отмены — N. Для форматирования жесткого диска надо иметь права администратора.

  • Размер кластера

Файловая система FAT позволяет иметь на диске не больше 65526 кластеров. Файловая система FAT32 ограничивает число кластеров диапазоном от 65527 до 4177917.

Для дисков с размером кластера больше 4096 сжатие NTFS не поддерживается.

  • Сообщения команды Format

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

  • Быстрое форматирование

Параметр командной строки /q позволяет ускорить процесс форматирования. Используйте этот параметр только для форматирования жестких дисков, заведомо не содержащих поврежденные сектора.

  • Использование команды format с переназначенными и сетевыми дисками

Диски, созданные командой subst, не могут быть отформатированы командой format. Также невозможно форматирование сетевых дисков.

  • Коды завершения команды Format

В следующей таблице перечислены коды завершения с кратким описанием.

Код завершения Описание
Форматирование прошло успешно
Были заданы недопустимые Параметры
Возникла фатальная ошибка (любая ошибка, кроме 0, 1 или 5).
В ответ на сообщение "Приступить к форматированию [Y(да)/N(нет)]?" была нажата клавиша N.

Коды завершения могут быть проверены с помощью переменной errorlevel в пакетной команде if.

Примеры

Чтобы отформатировать новый гибкий диск в дисководе A с использованием размера по умолчанию, следует ввести следующую команду:

format a:

Для быстрого форматирования ранее отформатированного диска в дисководе A можно использовать следующую команду:

Format a: /q

Чтобы отформатировать гибкий диск в дисководе A и присвоить метку тома "DATA", следует использовать следующую команду:

Format a: /v:DATA

 

Fsutil: behavior

Запрашивает текущие настройки для создания имен файлов с длиной 8.3 символа, для возможности отображения расширенных символов в имена файлов длиной 8.3 символа в томах NTFS, для обновления штампа времени последнего доступа к томам NTFS, частоты событий, записанных в системных журнал, и количества места на диске, зарезервированного зоной основной таблицы файлов (MFT). Включение и отключение использование имен файлов длиной 8.3 символа путем разрешения расширенных символов в именах файлов длиной 8.3 символа в томах NTFS и обновления штампа времени последнего доступа к томам NTFS. Позволяет изменять частоту записи событий квот в системный журнал и количество места на диске, зарезервированная для зоны основной таблицы файлов.

Синтаксис

fsutil behavior query {disable8dot3|allowextchar|disablelastaccess|quotanotify|mftzone}

fsutil behavior set [{disable8dot3 {1|0}|allowextchar {1|0}|disablelastaccess {1|0}|quotanotify частота|mftzone значение}]

Параметры

Query

Запрашивает Параметры поведения файловой системы.

Set

Изменяет Параметры поведения файловой системы.

disable8dot3 {1|0}

Отключает создание имен файлов длиной 8.3 символа в томах с форматом FAT и NTFS.

allowextchar {1|0}

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

disablelastaccess {1|0}

Определяет, обновляет ли NTFS штамп времени последнего доступа в каждом каталоге при перечислении каталогов в томе NTFS.

quotanotify частота

Настраивает частоту отчета о нарушении квот NTFS в системном журнале. Введите частоту (от 0 до 4294967295 секунд) записи нарушений квот в системный журнал. Значение по умолчанию составляет 1 час (3600 секунд).

mftzone значение

Зона основной таблицы файлов (MFT) является зарезервированной областью, позволяющей основной таблице файлов при необходимости расширяться, чтобы предотвратить фрагментацию основной таблицы файлов. Устанавливает величину параметра значение от 1 (по умолчанию) до 4 (максимум). Параметр значение расположен в 8 части диска.

Заметки

  • Подкоманда behavior записывает изменения в системный реестр, поэтому для вступления изменений в силу необходимо перезагрузить компьютер.
  • Использование disable8dot3 {1|0}

Если disable8dot3 имеет значение 0, то каждый раз при создании файла с длинным именем NTFS создает вторую запись файла, имеющую длину имени файла 8.3 символа. Когда NTFS создает файлы в папке, необходимо выполнять поиск имен файлов длиной 8.3 символа, связанных с длинными именами файлов.

Данный параметр обновляет раздел реестра HKLM\SYSTEM\CurrentControlSet\Control\FileSystem\NtfsDisable8dot3NameCreation.

  • Использование allowextchar {1|0}

Данный параметр обновляет раздел реестра HKLM\SYSTEM\CurrentControlSet\Control\FileSystem\NtfsAllowExtendedCharacterIn8dot3Name.

  • Использование disablelastaccess {1|0}

Параметр disablelastaccess разработан для уменьшения воздействия ведения журнала обновления штампа времени последнего доступа к папкам и каталогам. Отключение времени последнего доступа увеличивает скорость доступа к папкам и файлам.

Каждый файл и папка в томе NTFS содержит атрибут, который называется время последнего доступа. Данный атрибут определяет время последнего доступа к файлу или папке, например, просмотр папок пользователем, добавление файлов в папку, чтение файла или внесение изменений в файл. Самое новое время последнего доступа хранится в памяти и записывается на диск в два различных расположения. Одно расположение внутри атрибута файла, который является частью записи основной таблицы файлов (MFT). Второе расположения является индексом каталога, в котором содержится файл.

Время последнего доступа на диске не всегда является текущим временем. Данное запаздывание возникает из-за задержки NTFS при записи времени последнего доступа на диск, когда пользователи или программы выполняют над файлом или папкой операции только для чтения, например, перечень содержимого папки или чтение (но не изменение) файла в папке. Если время последнего доступа совпадает с текущим временем на диске для операций чтения, все операции чтения становятся операциями записи и влияют на производительность NTFS.

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

NTFS обычно обновляет атрибут файла на диске на более поздний, если текущее время последнего доступа в памяти отличается более, чем на час от времени последнего доступа, хранимого на диске, или если все ссылки на файл в памяти пропали. Например, если текущее время последнего доступа к файлу 1:00 P.M., а файл был прочтен в 1:30 P.M., то NTFS не обновляет время последнего доступа. Если файл был прочтен снова в 2:00 P.M., NTFS обновляет время последнего доступа в атрибуте файла на 2:00 P.M., поскольку в атрибуте файла отображалось 1:00 P.M., а в время последнего доступа в памяти отображало 2:00 P.M.

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

Примечание. Один час является максимальным временем, различимым NTFS при обновлении времени последнего доступа на диске. Если NTFS обновляет другие атрибуты файла, например, время последнего изменения, а время последнего доступа отложено, то NTFS обновляет время последнего доступа вместе с другими обновлениями без дополнительного воздействия на быстродействие.

Примечание. Использование параметра disablelastaccess может влиять на программы, использующие эту возможность, например, создание резервной копии и внешнее хранилище.

Данный параметр обновляет раздел реестра HKLM\SYSTEM\CurrentControlSet\Control\FileSystem\NtfsDisableLastAccessUpdate.

  • Использование mftzone значение

Параметр значение приблизительно равен начальному размеру основной таблицы файлов (MFT) плюс зона основной таблицы файлов на новом томе и устанавливается на время подключения для каждой файловой системы. При использовании пространства тома NTFS корректирует пространство, зарезервированное для будущего роста основной таблицы файлов. Если зона основной таблицы файлов уже большая, то полный размер зоны основной таблицы файлов снова не резервируется. Поскольку зона основной таблицы файлов основана на непрерывном диапазоне в конце основной таблицы файлов, она уменьшается, так как пространство используется.

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

Fsutil: dirty

Создает запрос, чтобы проверить, задан ли «грязный» бит тома. Задает «грязный» бит тома. Когда «грязный» бит тома задан, команда autochk автоматически проверит том на наличие ошибок при следующей перезагрузке компьютера.

Синтаксис

fsutil dirty {query|set} путь

Параметры

Query

Запрашивает «грязный» бит.

Set

Задает «грязный» бит тома.

путь

Указывает букву диска (с последующим двоеточием), точку подключения или имя тома.

Примечания

  • Если «грязный» бит тома задан, это может означать, что файловая система находится в неустойчивом состоянии. «Грязный» бит может быть задан, потому что том находится в подключенном состоянии и в нем имеются незаконченные изменения, из-за того что компьютер был выключен до того, как сделанные изменения были переданы на диск, или из-за обнаруженных повреждений тома. Если «грязный» бит задается при перезагрузке компьютера, командой chkdsk будет проведена проверка целостности тома.

При каждом запуске Windows XP ядро вызывает файл Autochk.exe для сканирования всех томов и проверки, заданы ли «грязные» биты томов. Если «грязный» бит задан, программа autochk немедленно запускает команду chkdsk /f для этого тома. Команда chkdsk /f проверяет целостность файловой системы и пытается устранить все возможные неисправности тома.

Примеры

Чтобы запросить «грязный» бит на диске C, введите:

fsutil dirty query C:

Пример выходных данных:

Том — C: изменен

или

Том — С: не изменен

Чтобы задать «грязный» бит на диске C, введите:

fsutil dirty set C:

Fsutil: file

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

Синтаксис

fsutil file [createnew] путь длина

fsutil file [findbysid] пользователь путь

fsutil file [queryallocranges] offset=смещение length=длина путь

fsutil file [setshortname] путь короткое_имя

fsutil file [setvaliddata] путь длина_данных

fsutil file [setzerodata] offset=смещение length=длина путь

Параметры

Createnew

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

путь

Указывает букву диска (с последующим двоеточием), точку подключения или имя тома.

длина

Указывает допустимую длину данных файла.

Findbysid

Находит файлы указанного пользователя в томах NTFS. Пользователь определяется по идентификатору безопасности файла (SID).

Пользователь

Указывает имя учетной записи или имя, с которым пользователь входит в систему.

путь

Указывает букву диска (с последующим двоеточием), точку подключения или имя тома.

Queryallocranges

Запрашивает выделенные для файла области в томе NTFS. Удобно использовать этот параметр для определения, имеет ли файл разреженные области.

offset=смещение

Указывает начало нулевого диапазона.

length=длина

Указывает длину области (в байтах).

путь

Указывает букву диска (с последующим двоеточием), точку подключения или имя тома.

Setshortname

Задает короткое имя (формат имени файла 8. 3) для файла в томе NTFS.

путь

Указывает букву диска (с последующим двоеточием), точку подключения или имя тома.

короткое_имя

Указывает короткое имя файла.

Setvaliddata

Задает допустимую длину данных для файла области в томе NTFS.

путь

Указывает букву диска (с последующим двоеточием), точку подключения или имя тома.

длина_данных

Указывает длину файла (в байтах).

Setzerodata

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

offset=смещение

Указывает смещение файла, начало нулевого диапазона.

length=длина

Указывает длину нулевого диапазона.

путь



Последнее изменение этой страницы: 2016-06-10

headinsider.info. Все права принадлежат авторам данных материалов.