Заметки
Вывод различий между файлами при текстовом сравнении в формате ASCII
При использовании программы fc для сравнения ASCII, fc отображает различия между двумя файлами в следующем порядке:
Использование /b для двоичного сравнения
/b отображает несоответствия, найденные в течение двоичного сравнения, как показано ниже.
xxxxxxxx: yy zz
Величина xxxxxxxx задает относительный шестнадцатеричный адрес пары различающихся байтов, отсчитываемый от начала файла. Адресация начинается с 00000000. Шестнадцатеричные величины yy и zz представляют различающиеся байты из имяфайла1 и имяфайла2 соответственно.
Использование подстановочных знаков
Можно использовать подстановочные знаки (* and ?) в параметрах имяфайла1 и имяфайла2. Если они использованы при задании первого файла имяфайла1, программа fc будет сравнивать все заданные файлы с файлом, указанным в параметре ИмяФайла. Если подстановочные знаки использованы при задании файла имяфайла2, fc при сравнении будет использовать соответствующие значения параметра имяфайла1.
Работа с памятью
При сравнении в текстовом режиме программа fc использует внутренний буфер (достаточный для размещения 100 строк). Если размер файлов больше размера буфера, программа fc будет сравнивать те части, которые поместились в буфер. Если fc не обнаруживает совпадения в загруженных частях файлов, программа остановится и будет выведено следующее сообщение:
Не удается выполнить синхронизацию строк. Слишком много различий между файлами.
Если же выполняется двоичное сравнение и размер файлов превосходит размер доступной памяти, fc выполняет сравнение полностью. При необходимости, файлы будут считываться с диска по частям. Вывод команды при этом не будет отличаться от вывода в случае полного размещения файлов в памяти.
Блок управления файлом является структурой данных, в которой хранится информация о файле.
Если программа пытается открыть более x файлов с использованием блоков управления файлом, подсистема MS-DOS может закрыть файлы, которые были открыты ранее.
Следует использовать команду fcbs только тогда, когда этого требует какая-либо программа. Большинство современных программ не требуют использования блоков управления файлом. Однако для работы некоторых старых программ требуется поместить команду fcbs в файл Config.nt.
Хотя значение по умолчанию x равно 8, некоторые программы требуют большего значения. Типовым значением является 20.
Задание строки
Если ключ /i не указан, команда find ищет именно то, что указано в параметре строка. Например, для команды find символы "a" и "A" являются различными. Если используется ключ /i, команда find не различает строчные и прописные буквы, и символы "a" и "A" являются одинаковыми.
Если строка поиска содержит кавычки, при вызове команды каждая кавычка в строке поиска должна быть заменена двумя символами кавычек ("СтрокаСодержания""Кавычки").
Использование команды find в качестве фильтра
Если имя файла пропущено, find действует как фильтр, получая ввод из стандартного источника вывода (обычно клавиатура, канал или файл перенаправления), и выводит все строки, содержащие параметр строка.
Порядок синтаксиса команды
Параметры и ключи команды find могут быть заданы в произвольном порядке.
Использование подстановочных знаков
Подстановочные знаки (* и ?) не могут быть использованы в именах файлов и расширениях, задаваемых в команде find. Чтобы искать строку в множестве файлов, указанных с помощью подстановочных знаков, можно использовать команду find в команде for.
Использование ключей /v или /n с ключом /c
Если в одной команде заданы ключи /c и /v, команда find выведет на экран количество строк, которые не содержат заданную строку поиска. Если в одной команде указаны оба ключа: /c и /n, команда find игнорирует ключ /n.
Использование команды find со знаками перевода строки
Команда find не распознает символ перевода строки. Когда команда find используется для поиска текста в файле, который содержит символы перевода строки, необходимо ограничить строку поиска текстом, который может быть найден между символами перевода строки (строка не может прерываться символом перевода строки). Например, find не найдет совпадение для строки "файл налогов" если перевод строки в файле стоит между словами "файл" и "налогов".
Использование регулярных выражений с командой findstr
Команда findstr способна выполнять точный поиск текста в любом текстовом файле или файлах формата ASCII. Однако иногда имеется только часть информации, которая должна быть найдена, или требуется найти информацию в широком диапазоне. В таких случаях команда findstr предоставляет мощную возможность поиска с использованием регулярных выражений.
В противоположность точному заданию строки символов для поиска, регулярные выражения позволяют задать образец текста. Для задания образца используются литералы и метасимволы. Каждый символ, который не имеет специального значения в регулярных выражениях, рассматривается как литерал и должен точно совпасть при поиске. Например, буквы и цифры являются литеральными символами. Метасимволы — это символы со специальным значением (оператор или разделитель) в регулярных выражениях.
В приведенной ниже таблице перечислены метасимволы, допустимые для команды findstr.
. | Подстановочный знак: любой символ |
* | Повтор: ноль или более предшествующих символов или классов символов. |
^ | Позиция строки: начало строки |
$ | Позиция строки: конец строки |
[класс] | Класс символа: любой символ из множества |
[^класс] | Инвертированный класс: любой символ из множества |
[x-y] | Диапазон: любой символ из диапазона |
\x | Исключение: использование метасимвола x в качестве литерала |
\<xyz | Позиция слова: начало слова |
xyz\> | Позиция слова: конец слова |
Специальные символы в регулярных выражениях дают наилучший результат при совместном использовании. Например, при комбинации символа подстановки (.) и повторителя (*) совпадает любая строка символов:
.*
Используйте следующее выражение как часть более объемного выражения, которое совпадает со строкой, начинающейся с "b" и оканчивающейся на "ing":
b.*ing
Может быть указано несколько параметров пользователь@узел.
Перед параметром finger необходимо поместить дефис (-), а не косую черту (/).
Эта команда доступна, только если в свойствах сетевого адаптера в объекте Сетевые подключения в качестве компонента установлен протокол Интернета (TCP/IP).
Команда 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.
Если параметр множество содержит подстановочные знаки (* и ?), команда, указанная в параметре команда, выполняется для каждого каталога (кроме множества файлов в указанном каталоге), совпадающего с параметром множество. Используется следующий синтаксис.
Некоторые программы MS-DOS не распознаются системой Microsoft WindowsXP как программы MS-DOS. Для запуска таких программ служит команда forcedos.
Все программы, запускаемые командой forcedos, открываются как приложения MS-DOS.
Команда format с другими параметрами доступна на консоли восстановления.
Чтобы форматировать жесткий диск с помощью этой команды, необходимо быть членом группы администраторов.
Команда format создает новый корневой каталог и файловую систему на диске. Также возможен поиск сбойных участков на диске и удаление всех данных с диска. Перед использованием нового диска он должен быть отформатирован с использованием этой команды.
После того, как гибкий диск будет отформатирован, команда format выведет на экран следующий запрос:
Метка тома (11 символов, ENTER - метка не нужна)?
Метка тома может состоять максимум из 11 символов (считая пробелы). Если ввод метки тома не требуется, следует просто нажать ENTER. Чтобы получить сведения о метках томов, выберите label из списка в ссылке "См. также".
Когда команда format используется для форматирования жесткого диска, перед началом форматирования командой formatна экран будет выведено следующее сообщение:
ВНИМАНИЕ, ВСЕ ДАННЫЕ НА НЕСЪЕМНОМ ДИСКЕ
x БУДУТ УНИЧТОЖЕНЫ!
Приступить к форматированию [Y(да)/N(нет)]?_
Для форматирования жесткого диска следует нажать Y; для отмены— N. Для форматирования жесткого диска надо иметь права администратора.
Файловая система FAT позволяет иметь на диске не больше 65526 кластеров. Файловая система FAT32 ограничивает число кластеров диапазоном от 65527 до 4177917.
Для дисков с размером кластера больше 4096 сжатие NTFS не поддерживается.
После окончания процесса форматирования программой format на экран будет выведено сообщение, содержащее сведения об общем объеме диска, о сумме размеров поврежденных секторов и о пространстве, доступном для размещения файлов.
Параметр командной строки /q позволяет ускорить процесс форматирования. Используйте этот параметр только для форматирования жестких дисков, заведомо не содержащих поврежденные сектора.
Если disable8dot3 имеет значение 0, то каждый раз при создании файла с длинным именем NTFS создает вторую запись файла, имеющую длину имени файла 8.3 символа. Когда NTFS создает файлы в папке, необходимо выполнять поиск имен файлов длиной 8.3 символа, связанных с длинными именами файлов.
Данный параметр обновляет раздел реестра HKLM\SYSTEM\CurrentControlSet\Control\FileSystem\NtfsDisable8dot3NameCreation.
Данный параметр обновляет раздел реестра HKLM\SYSTEM\CurrentControlSet\Control\FileSystem\NtfsAllowExtendedCharacterIn8dot3Name.
Параметр disablelastaccess разработан для уменьшения воздействия ведения журнала обновления штампа времени последнего доступа к папкам и каталогам. Отключение времени последнего доступа увеличивает скорость доступа к папкам и файлам.
Каждый файл и папка в томе NTFS содержит атрибут, который называется время последнего доступа. Данный атрибут определяет время последнего доступа к файлу или папке, например, просмотр папок пользователем, добавление файлов в папку, чтение файла или внесение изменений в файл. Самое новое время последнего доступа хранится в памяти и записывается на диск в два различных расположения. Одно расположение внутри атрибута файла, который является частью записи основной таблицы файлов (MFT). Второе расположения является индексом каталога, в котором содержится файл.
Время последнего доступа на диске не всегда является текущим временем. Данное запаздывание возникает из-за задержки NTFS при записи времени последнего доступа на диск, когда пользователи или программы выполняют над файлом или папкой операции только для чтения, например, перечень содержимого папки или чтение (но не изменение) файла в папке. Если время последнего доступа совпадает с текущим временем на диске для операций чтения, все операции чтения становятся операциями записи и влияют на производительность NTFS.
В команде_открытия команда ftype использует следующие подстановки переменных:
%0 или %1 замещаются именем открываемого файла.
%* замещается всеми параметрами
%~n замещаются всеми остальными параметрами, начиная с n-го параметра, где n— любое число от 2 до 9.
%2 замещается первым параметром, %3 — вторым и т. д.