AUTOEXEC.BAT

AUTOEXEC.BAT

AUTOEXEC.BAT (от англ. automatic execution — автоматическое исполнение и англ. batch — пакет, группа) — системный пакетный файл (файл, содержащий последовательность команд на языке интерпретатора командной строки — поставляемого в составе MS-DOS COMMAND.COM или его клонов вроде 4DOS (англ.)), расположенный в корневом каталоге загрузочного устройства (англ. Boot disk) (дискеты или диска). Впервые этот файл появился в операционной системе MS-DOS, а его имя является аббревиатурой и описывает его функцию — автоматическое исполнение команд при загрузке системы. Аббревиатура была необходима из-за ограничения 8.3 на длину имени файла (8 знаков собственно имени и 3 знака расширения) в файловой системе FAT[1].

AUTOEXEC.BAT ничем не отличается от прочих пакетных файлов (в отличие от другого файла конфигурирования DOS, Windows 9x и OS/2 — CONFIG.SYS). Как правило, он используется в DOS для установки ключевых переменных окружения (таких как PATH), загрузки драйверов и резидентных программ (SMARTDRV.EXE, MSCDEX, дра́йвера мыши, программ русификации клавиатуры и экрана и т. п.), а также запуска утилит конфигурации (например, для настройки параметров звуковых карт) и проверки системы (например, антивирусных сканеров).

Содержание

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

MS-DOS

В MS-DOS AUTOEXEC.BAT исполняется после старта командного интерпретатора, который загружается после обработки команд из файла конфигурации CONFIG.SYS. С помощью директивы shell= в CONFIG.SYS можно задействовать командный интерпретатор, отличный от COMMAND.COM, и/или указать имя для стартового пакетного файла, отличное от AUTOEXEC.BAT. При отсутствии файла AUTOEXEC.BAT (или при отмене его исполнения) в большинстве версий DOS командный интерпретатор запрашивает у пользователя текущие дату и время.[2]

Начиная с MS-DOS 6.0,[3] появилась возможность пропустить исполнение AUTOEXEC.BAT с помощью функциональных клавиш  F5  и  F8  (для этого в COMMAND.COM ввели поддержку опций /Y и /D), но с помощью директивы switches= в файле CONFIG.SYS эти клавиши можно заблокировать.[4]

Клоны MS-DOS

Клоны MS-DOS кроме файла AUTOEXEC.BAT могут использовать файлы и с другими именами, что облегчает сосуществование разных версий DOS на одном диске. Например, в Caldera DR-DOS 7 вместо AUTOEXEC.BAT исполняется файл AUTODOS7.BAT[5], если такой имеется на диске.

Windows 95 и Windows 98 (MS-DOS 7.x)

Windows 95 и Windows 98 основаны на MS-DOS 7.x и работа с AUTOEXEC.BAT в этих операционных системах происходит так же, как и в предыдущих версиях MS-DOS. Отличие же MS-DOS 7.x от предыдущих версий заключается в том, что по окончании исполнения AUTOEXEC.BAT автоматически запускается графическая оболочка, а не выводится командная строка. Однако, с помощью настройки BootGUI в файле MSDOS.SYS это можно отменить, и тогда пользователь, как и ранее, будет оставаться в командной строке, из которой графическую оболочку можно запустить вручную командой WIN.[6]

Двойная загрузка DOS и Windows 9x

При установке Windows 9x поверх уже установленной DOS или Windows файл AUTOEXEC.BAT (так же, как CONFIG.SYS и системные исполняемые файлы IO.SYS, MSDOS.SYS и COMMAND.COM) переименовывается в AUTOEXEC.DOS.[7] Это делается с целью облегчения двойной загрузки между Windows 9x и DOS: при загрузке в предыдущую версию системы (через выбор соответствующего пункта из стартового меню Windows, вызываемого клавишей  F8 , или через нажатие клавиши  F4  при старте системы), этот файл временно, до следующей перезагрузки, переименовывается обратно, а файл AUTOEXEC.BAT, созданный для Windows 9x, переименовывается в AUTOEXEC.W40.[8] (При этом файл IO.SYS в Windows 95 переименовывается в WINBOOT.SYS, а в Windows 98/ME — в JO.SYS).[8][9][10]

Перезагрузка в режиме MS-DOS из-под Windows

При выборе пункта «перезагрузить компьютер в режиме MS-DOS» (англ. Restart the computer in MS-DOS mode) в диалоге «Завершение работы Windows» (англ. Shut Down Windows) или при запуске DOS-приложения через ярлык в Windows 9x имеется возможность задать конфигурацию (CONFIG.SYS и AUTOEXEC.BAT), отличную от основной конфигурации.[11][12][13][14]

При перезагрузке компьютера через выбор пункта «перезагрузить компьютер в режиме MS-DOS» в диалоге «Завершение работы Windows», Windows закрывает все запущенные программы и выгружает себя из памяти, после чего выходит в командную строку в реальном режиме. Если в свойствах (закладка «Программа», кнопка «Дополнительно») файла Exit to DOS.pif (Выход в Dos.PIF в русской версии Windows), который находится в каталоге Windows и управляет перезагрузкой в режим MS-DOS, выбрана опция «Использовать текущую конфигурацию MS-DOS» (англ. Use Current MS-DOS Configuration), то исполняется файл DOSSTART.BAT. В противном случае, если выбрана опция «Выбрать новую конфигурацию MS-DOS» (англ. Specify A New MS-DOS Configuration), вместо основных CONFIG.SYS и AUTOEXEC.BAT используются файлы с содержанием, указанным в тех же настройках. Для возврата к Windows после перезапуска компьютера в режиме MS-DOS нужно выполнить команду exit в командной строке.

При запуске через ярлык программы, настроенной на запуск в режиме MS-DOS со своей конфигурацией (закладка «Программ», кнопка «Дополнительно», опция «Выбрать новую конфигурацию MS-DOS»), файлы CONFIG.SYS и AUTOEXEC.BAT переименовываются в файлы CONFIG.WOS и AUTOEXEC.WOS (в случае отсутствия этих файлов создаются файлы нулевой длины). После чего создаются новые файлы CONFIG.SYS и AUTOEXEC.BAT и туда копируются строки, указанные в настройках ярлыка. При этом первой строкой нового CONFIG.SYS будет строка dos=single, а последней строкой AUTOEXEC.BAT — <windir>\win.com /wx" (где вместо <windir> записывается путь к каталогу Windows). Также, файл AUTOEXEC.BAT будет содержать команды CD для перехода в каталог с программой и CALL для запуска программы. Далее Windows перезапускает компьютер и, обнаружив файлы CONFIG.WOS и AUTOEXEC.WOS, IO.SYS при загрузке системы выдаёт сообщение «Windows 95/98 is now starting your MS-DOS-based program».

Опция /wx в команде запуска win.com заставляет Windows переименовать CONFIG.SYS и AUTOEXEC.BAT в CONFIG.APP и AUTOEXEC.APP, вернуть исходные файлы CONFIG.SYS и AUTOEXEC.BAT из файлов CONFIG.WOS и AUTOEXEC.WOS и перезагрузиться. После перезагрузки, при старте Windows, содержимое файлов CONFIG.APP и AUTOEXEC.APP копируется обратно в свойства DOS-программы, которая и была запущена в режиме MS-DOS.

Windows ME (MS-DOS 8.0)

В Windows ME в файле AUTOEXEC.BAT игнорируются все команды, кроме команд установки переменных окружения[15], однако известны способы обхода этого ограничения[16].

Семейство Windows NT

В операционных системах семейства Windows NT AUTOEXEC.BAT обрабатывается при входе пользователя в систему, и, как и в Windows ME, в нём игнорируются все команды, кроме команд установки переменных окружения (PATH, PROMPT и SET).[17] После обработки переменные из AUTOEXEC.BAT добавляются к переменным, заданным в реестре (в том числе, содержимое переменной PATH дописывается к содержимому, сформированному Windows). Обработку AUTOEXEC.BAT можно отменить, установив в 0 значение ключа реестра HKCU\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\ParseAutoexec.[18]

OS/2

В операционных системах семейства OS/2 файл AUTOEXEC.BAT отрабатывается при запуске сессии DOS в Virtual DOS Machine.[19]

Другие автостартующие пакетные файлы системы

Файл autoexec.nt

В операционных системах семейства Windows NT файл AUTOEXEC.BAT используется только для чтения переменных окружения. При старте DOS-сессий (для запуска в режиме эмуляции приложений, написанных для DOS) вместо него исполняется файл autoexec.nt, расположенный в %systemroot%\System32. Синтаксис этого файла похож на синтаксис AUTOEXEC.BAT, но исполняется он без вывода сообщений о программах и командах на консоль (если только в файле config.nt не дана команда echoconfig[20]). Помимо этого, в свойствах ярлыка (pif-файла) для DOS-приложения можно задать собственные файлы config.nt и autoexec.nt (англ. Custom MS-DOS initialization files).

Файлы WINSTART.BAT и DOSSTART.BAT

В Windows 3.x и операционных системах Windows 95 и Windows 98 файл WINSTART.BAT, располагающийся в каталоге Windows (указывается в переменной окружения %windir%), исполняется непосредственно перед стартом графической оболочки.[21]

Файл DOSSTART.BAT, добавленный в Windows 95 и Windows 98 и располагающийся также в каталоге Windows, исполняется при выходе из графической оболочки в режим командной строки.[22]

Меню конфигураций

Начиная с MS-DOS 6.0 появилась возможность в CONFIG.SYS описывать меню для выбора одной из нескольких конфигураций.[23] При выборе пункта меню имя секции с описанием требуемой конфигурации, указанное в этом пункте, сохраняется в переменной окружения CONFIG. Это позволяет с помощью команд goto %CONFIG% и if "%CONFIG%"== в AUTOEXEC.BAT (и в прочих пакетных файлах) выполнять разные действия в зависимости от выбора конфигурации при загрузке.

Пример файла AUTOEXEC.BAT

@ECHO OFF
REM C:\WINDOWS\SMARTDRV.EXE
C:\WINDOWS\SMARTDRV.EXE 2038 512
PROMPT $p$g
PATH C:\DOS;C:\WINDOWS;C:\LWORKS;C:\EXPLORER.4LC
SET TEMP=C:\DOS
MODE LPT1:,,P >nul
C:\DOS\SHARE.EXE /F:150 /L:1500
C:\WINDOWS\mouse.COM /Y
cd windows
WIN

В этом примере можно видеть отключение эха (дублирование обрабатываемых строк на экран), запуск драйвера SMARTDRV (одна строка закомментирована, в другой SMARTDRV запускается с аргументами), установку переменных окружения (PROMPT, PATH, TEMP), запуск резидентной программы (MODE) и других драйверов (SHARE и MOUSE), и, наконец, переход в каталог windows (CD) и запуск собственно Windows (WIN).

Интересные факты

  • Некоторые файловые менеджеры (DOS Navigator, Norton Commander 5) при запуске на исполнение файлов с расширением .bat сравнивают их имя с AUTOEXEC.BAT и запрашивают у пользователя подтверждение в случае совпадения.

AUTOEXEC.BAT в культуре

Файл AUTOEXEC.BAT — один из немногих файлов, которые удостоились упоминания в известном художественном произведении. В повести Виктора Пелевина «Принц Госплана» AUTOEXEC.BAT играет важную роль. В первый раз упоминание о нём появляется в третьей главе (Level 3).[24] Главный герой советует «командировочному из Пензы», прибывшему в Госснаб по каким-то делам и играющему между делом на компьютере в Starglider (англ.), вписать в «автоэкзэк» команду вызова игры, что может помочь возродиться в случае гибели в игре:[25]

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

— Когда на вас ракеты летят, — сказал Саша, — вы на высоту лучше уходите. Из лазера больше одной не собьёшь, а эта штука пачками бьёт.

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

— Тогда автоэкзэк себе сделайте, — сказал Саша, — а то вас каждый раз вызывать времени ни у кого нет.

Гость не отзывался — на него шли сразу два шагающих танка, и ему было не до болтовни.

Во второй раз AUTOEXEC.BAT спасает самого главного героя. Четвёртая глава (Level 4) описывает поездку героя в Госплан на метро, где он погибает, попав на эскалаторе на одно из стандартных препятствий игры Prince of Persia, так называемую «разрезалку пополам»: два зазубренных лезвия, которые выскакивают из пола и потолка навстречу друг другу и сталкиваются с характерным лязгом. При попадании Саши в разрезалку глава обрывается многоточием на полуслове внутреннего монолога героя, после чего следуют заголовки AUTOEXEC.BAT, LEVEL 4 и четвёртая глава начинается снова. Постепенно в её текст вкрадываются модификации, а лица некоторых пассажиров кажутся Саше странно знакомыми. В этом варианте главы Саша поднимается по другому эскалатору, видит разрезалку пополам, заработавшую на соседнем эскалаторе, и радуется, что ему удалось её избежать.

Примечания

  1. KB100108: Обзор файловых систем FAT, HPFS и NTFS  (рус.). Microsoft (23 декабря 2005). Архивировано из первоисточника 21 января 2012. Проверено 21 декабря 2008.
  2. KB95554: Not Using the /P Switch with the SHELL Command  (англ.). Microsoft (18 января 2007). Архивировано из первоисточника 27 января 2012. Проверено 21 декабря 2008.
  3. KB96710: How Do I Get MS-DOS to Run in the High Memory Area?  (англ.). Microsoft (12 мая 2003). Архивировано из первоисточника 21 января 2012. Проверено 21 декабря 2008.

    При использовании MS-DOS 6.0 или 6.2 … не требуется создавать загрузочный диск, поскольку при загрузке можно воспользоваться клавишей  F8  для пропуска команд в CONFIG.SYS, если они подвешивают систему.

  4. KB93602: How to Disable F5 and F8 During Startup in MS-DOS  (англ.). Microsoft (16 ноября 1999). Архивировано из первоисточника 21 января 2012. Проверено 21 декабря 2008.
  5. Chapter 1. Introduction to Caldera DR-DOS. Features of Caldera DR-DOS  (англ.). Caldera DR-DOS Quick Start Guide. Caldera Thin Clients (1998). Архивировано из первоисточника 21 января 2012. Проверено 21 декабря 2008.
  6. KB141721: How to Boot to a Command Prompt by Default  (англ.). Microsoft (19 января 2007). Архивировано из первоисточника 21 января 2012. Проверено 21 декабря 2008.
  7. KB121963: Requirements to Boot Previous Operating System  (англ.). Microsoft (10 мая 2007). Архивировано из первоисточника 21 января 2012. Проверено 7 июня 2009.
  8. 1 2 MDGx / AXCEL216. The renaming game  (англ.). Windows 95/98/NT4/2000/ME/XP/2003 + DOS 7.xx/8.00 Tricks + Secrets Files. Проверено 7 июня 2009.
  9. KB187641: Err Msg: The Following File Is Missing or Corrupt…  (англ.). Microsoft (23 января 2007). — «The Jo.sys file is used by Windows 98 and Windows Me in a dual-boot environment with MS-DOS»  Архивировано из первоисточника 21 января 2012. Проверено 7 июня 2009.
  10. См. также: Bart’s free JO.SYS  (англ.) (12 марта 2002, версия 1.4). — Альтернативный вариант JO.SYS. Архивировано из первоисточника 21 января 2012. Проверено 7 июня 2009.
  11. KB138996: Description of Restarting Computer in MS-DOS Mode  (англ.). Microsoft (19 января 2007). Архивировано из первоисточника 21 января 2012. Проверено 21 декабря 2008.
  12. KB134400: General Tips for Using MS-DOS Mode  (англ.). Microsoft (19 января 2007). Архивировано из первоисточника 21 января 2012. Проверено 21 декабря 2008.
  13. KB130448: Cannot Quit MS-DOS Mode  (англ.). Microsoft (19 января 2007). Архивировано из первоисточника 21 января 2012. Проверено 21 декабря 2008.
  14. KB151717: Cannot Exit MS-DOS Mode  (англ.). Microsoft (19 января 2007). Архивировано из первоисточника 21 января 2012. Проверено 21 декабря 2008.
  15. KB269524: Overview of Real Mode Removal from Windows Millennium Edition  (англ.). Microsoft (27 января 2007). Архивировано из первоисточника 21 января 2012. Проверено 21 декабря 2008.
  16. Reines [MFD]. Real DOS-Mode Patch for Windows ME v1.3  (англ.) (15 августа 2000).(недоступная ссылка — история) Проверено 21 декабря 2008.
  17. Appendix B. Other Application Environments  (англ.). Библиотека TechNet. Microsoft. — Окружение для приложений Windows 3.x, MS-DOS и OS/2 в Windows NT. Архивировано из первоисточника 21 января 2012. Проверено 21 декабря 2008.
  18. KB124551: INFO: Configuring Parsing of the AUTOEXEC.BAT File  (англ.). Microsoft (20 марта 2007). Архивировано из первоисточника 21 января 2012. Проверено 21 декабря 2008.
  19. Общая часть. Статья 097. OS/2 General FAQ. Russian Underground/2. — Советы по настройкам в AUTOEXEC.BAT. Архивировано из первоисточника 28 апреля 2012. Проверено 8 апреля 2012.
  20. Windows XP / Echoconfig  (англ.). TechNet Library. Microsoft. Архивировано из первоисточника 21 января 2012. Проверено 21 декабря 2008.
  21. KB69186: WINSTART.BAT Won’t Load Microsoft LAN Manager Driver  (англ.). Microsoft (16 ноября 2006). Архивировано из первоисточника 21 января 2012. Проверено 21 декабря 2008.
  22. KB141308: How to Run Automatic Commands When Starting in MS-DOS Mode  (англ.). Microsoft (18 января 2007). Архивировано из первоисточника 21 января 2012. Проверено 21 декабря 2008.
  23. Batch Commands. TechNet Archive → MS-DOS. Microsoft. Архивировано из первоисточника 27 января 2012. Проверено 7 августа 2020.
  24. Повесть, герои которой живут на границе между реальностью и виртуальным миром компьютерных игр, состоит из введения (Loading…) и глав (Level 1, Level 2 и т. д.). Главный герой Саша играет в игру Prince of Persia, на которую и намекает название повести.
  25. Пелевин В. Level 3 // Принц Госплана.

Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Полезное


Смотреть что такое "AUTOEXEC.BAT" в других словарях:

  • AUTOEXEC.BAT — is the name of a system file found originally on the MS DOS operating system. It is a plain text batch file that is located in the root directory of the boot device. The name of the file stands for automatic execution , which describes its… …   Wikipedia

  • Autoexec.bat — est le nom d’un fichier système rencontré à l’origine dans le système d’exploitation MS DOS. Il s’agit d’un fichier batch de type .bat (fichier de commandes au format texte) situé à la racine du périphérique sur lequel l’ordinateur démarre. Le… …   Wikipédia en Français

  • Autoexec.bat — Saltar a navegación, búsqueda autoexec.bat es el nombre de un archivo de sistema encontrado en el sistema operativo MS DOS. Es un archivo por lotes en texto plano que se encuentra en el directorio raíz del dispositivo de arranque. Uso El archivo… …   Wikipedia Español

  • autoexec.bat — es el nombre de un archivo de sistema encontrado en el sistema operativo MS DOS. Es un archivo por lotes en texto plano que se encuentra en el directorio raíz del dispositivo de arranque. Es una abreviación de Autoexecutable.bat Uso El archivo… …   Wikipedia Español

  • AUTOEXEC.BAT — Saltar a navegación, búsqueda Autoexec.bat Obtenido de AUTOEXEC.BAT …   Wikipedia Español

  • autoexec.bat —   [Abk. für Auto execute Batch File; dt. »selbstausführende Stapeldatei«], bei DOS eine Stapeldatei, die nach jedem Start des Computers automatisch ausgeführt wird und in ihrer einfachsten Variante v. a. dazu dient, das Betriebssystem an die… …   Universal-Lexikon

  • AUTOEXEC.BAT — Die AUTOEXEC.BAT (ab Windows 95 kann es auch als autoexec.bat klein geschrieben werden) ist eine System Konfigurationsdatei unter MS DOS basierten Computersystemen. Der Name der Datei ist ein Kofferwort aus den Begriffen automatic („automatisch“) …   Deutsch Wikipedia

  • Autoexec.bat — Die autoexec.bat ist eine System Konfigurationsdatei unter MS DOS basierten Computersystemen. Der Name der Datei ist ein Kofferwort aus den Begriffen automatic („automatisch“) und execution („Durchführung“), wodurch ihre Funktion erklärt wird:… …   Deutsch Wikipedia

  • AUTOEXEC.BAT —    A contraction of Automatically Executed Batch. A special MS DOS batch file, located in the root directory of the startup disk, that runs automatically every time you start or restart your computer. The commands contained in AUTOEXEC.BAT are… …   Dictionary of networking

  • AUTOEXEC.BAT — ● adj et n. m. ►SYSTM Fichier de commandes exécutées en batch au démarrage d un système sous MS DOS. Toute une génération d informaticiens s est arraché les cheveux sur la configuration de ce fichier et de son petit frère, l abominable CONFIG.SYS …   Dictionnaire d'informatique francophone


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»