Недокументированные параметры команд MS-DOS.
Недокументированные параметры команд MS-DOS Секреты MS-DOS? Да что там может быть секретного - все давно всем известно, все изучено, проверено и описано! Ан нет! На самом деле у большинства команд ДОС имеются недокументированные параметры командной строки, которые невозможно увидеть даже при вызове справки через запрос в виде:
"имя_команды_ДOC/?".
О некоторых таких командах и пойдет речь в данной статье.
Недокументированные параметры COMMAND.COM
Недокументированные параметры FDISK.EXE
Недокументированные параметры FORMAT.COM
Недокументированные параметры MEM.EXE
Недокументированные параметры команды VER
Недокументированная команда LFNFOR
Недокументированные параметры COMMAND.COM
COMMAND /F (MS-DOS версии 6.00 или выше)
COMMAND.COM с недокументированной опцией /F позволяет убирать обычно зацикленные
надписи "Abort, Retry, Fail" и автоматически "отвечать"
"Fail" на этот запрос появляющийся при критических ошибках DOS.
Например, если вы забыли вставить дискету в дисковод, сообщение об
ошибке автоматически отключит запрос и вернется к DOS Prompt, послав
значение Fail и тем самым избавив вас от необходимости нажимать
клавишу "F". Это параметр можно устанавливать в свойствах сеанса
MS-DOS в Windows 95, либо прописывать его в файле CONFIG.SYS через
параметр SHELL=путь к командному интерпретатору.
Например:
SHELL=C:\COMMAND.COM C:\ /E:512 /P /F
СOMMAND.COM c этим параметром можно запускать и как отдельную, "чистую" сессию
из уже запущенного DOS-сеанса.
COMMAND /Z (только Windows 95 или OSR2)
COMMAND.COM /Z показывает значение "ERRORLEVEL" возвращаемое после каждой
запущенной внешней команды DOS (к ним относятся программы из каталога Win95\Command,
например mem или xcopy). Этот параметр позволяет с большим удобством
обрабатывать различные события, ситуации и ошибки в процессе выполнения внешних
команд ДОС в bat-файлах. Это параметр также можно устанавливать в свойствах
сеанса MS-DOS в Windows 95 или включать его в файле CONFIG.SYS через параметр
SHELL. Например:
SHELL=C:\COMMAND.COM C:\ /E:512 /P /Z
Опять таки СOMMAND.COM c этим параметром можно запускать и
как отдельную сессию из уже запущенного DOS-сеанса, при этом вы увидите надпись
о перезагрузке нерезидентной части командного интерпретатора, а также увидите
результат включения параметра - надпись о возврате кода 0, что говорит о
нормальном завершении операции.
Недокументированные параметры FDISK.EXE
FDISK /FPRMT (только Windows 95 OSR2 или позже)
FDISK /FPRMT включает возможность использования файловой системы FAT32 на
жестких дисках с объемом меньше 512 мегабайт. По умолчанию FDISK не должен
создавать FAT32 разделы на небольших дисках по причине несущественного или
вернее практически отсутствующего на них выигрыша от использования FAT32.
Это вполне понятно - потери места при таком размере дисков незначительны, так
что отсутствие этой команды в описании MS-DOS вполне объяснимо. Также не
забывайте о том что FDISK лучше не запускать из сессии ДОС под Windows 95/98.
Правильным вариантом будет загрузка в режиме "чистого ДОС'а" - Command Prompt
через загрузочное меню Windows 95 по клавише F8.
FDISK x /PRI:ps /EXT:es /LOG:ls (MS-DOS 6.00 или выше)
Недокументированные параметры в этой длинной команде означают:
x = номер устройства (1, 2... и так далее). Под устройством с номером
1 естественно подразумевается первый жесткий диск; /PRI:ps = создает на диске
первичный (primary) раздел размером ps мегабайт; /EXT:es = создает на диске
вторичный (extended) раздел размером es мегабайт; /LOG:ls = создает на вторичном
разделе диска логические диски размером ls мегабайт.
FDISK /MBR (MS-DOS 6.00 или выше)
FDISK /MBR восстанавливает поврежденный boot-сектор винчестера просто
перезаписывая его (вернее говоря, на диск записывается новая MBR (Master Boot
Record) без внесения изменений в конфигурацию разделов диска). Необходимо
отметить, что перезапись основного загрузочного блока таким способом может
сделать невидимыми диски разбитые программой SStor, кроме того, возможны
проблемы с двойной загрузкой Windows 95, итак некорректно работающей в
OSR2.Также необходимо быть осторожными с дисками имеющими более четырех
разделов. Кстати, с MBR существует еще одна не очень известная проблема,
возникающая
при установке новых винчестеров под Windows 95 после апгрэйда с MS-DOS версии
5.0 (или раньше). В этом случае у вас имеется основной диск с MBR записанной
FDISK'ом из старого MS-DOS. А когда вы добавляете еще один жесткий диск под
Windows 95, вы разбиваете его FDISK'ом из состава
девяностопятки (то бишь из версии MS-DOS 7.xx). Таким образом вы как бы
имеете два диска отформатированных и разбитых в разных операционных
системах, так что Windows 95 не сможет обнаружить "старый" диск. В этом
случае вам просто нужно обновить MBR, запустив FDISK с параметром /MBR. Опять
таки FDISK нужно запускать не из сессии ДОС под Windows 95/98, а по F8 в режиме
"чистого ДОС'а" - Command Prompt или в режиме загрузки старой версии ДОС (если у
вас не OSR2).
В принципе существует и более простой способ обновления дефектной или
сбойной MBR - запуск ScanDisc'a или другой подобной утилиты, правда в этом
случае возможна смена логических имен дисков, например C на D и наоборот.
Недокументированные параметры FORMAT.COM
FORMAT диск: /Z:n (Windows 95 OSR 2.0 и выше)
Эта недокументированная опция позволяет форматировать диски с FAT32
файловой системой и с размером кластера равным n раз по 512 байт. То есть
при значении n равном 2, размер кластера будет равняться одному килобайту
(2*512=1024).
Недокументированные параметры MEM.EXE
MEM /A (MS-DOS 6.00 и выше)
Внешняя команда ДОС MEM с недокументированным параметром /A показывает
стандартную информацию о памяти плюс информацию о сегменте HMA (High Memory
Area). HMA - это небольшой 64-х килобайтная область памяти выше первого
мегабайта, куда обычно загружается ядро ДОС, а также размещаются ДОС-буфера.
Доступом же к HMA заведует HIMEM.SYS, открывающий так называемую линию A20.
Для более полной информации можно воспользоваться комбинацией стандартных
параметров MEM /A /C /P или MEM /D /A /P (для показа дополнительной информации о
резидентных программах и модулях). К сожалению поставить все параметры сразу
программа не позволяет.
Недокументированные параметры команды VER
VER /R (Windows 95 и выше)
Эта встроенная ДОС команда с недокументированным параметром /R позволяет не
только вывести версию операционной системы, но и показать в каком сегменте
находится ДОС (обычно HMA, если в CONFIG.SYS прописано DOS=HIGH).
Недокументированная команда LFNFOR
LFNFOR [ON | OFF | /?] (Windows 95 и выше)