AUTOEXEC.BAT
AUTOEXEC.BAT – nazwa specjalnego pliku wsadowego, np. systemu MS-DOS. Znajduje się on w katalogu głównym systemu plików. Nazwa pliku jest skróceniem wyrażenia ang. automatic execution (automatyczne wykonywanie), które opisuje przeznaczenie pliku – automatyczne uruchamianie poleceń w trakcie startu systemu. Zastosowana nazwa wynika również z ograniczenia długości nazw plików w systemie FAT do postaci 8.3.
Użycie
AUTOEXEC.BAT
odczytywany jest przez wszystkie wersje systemu DOS, włącznie z wersją MS-DOS 7.x występującą w Windows 95 i Windows 98. System Windows Me korzysta jedynie ze zmiennych środowiskowych w celu ograniczenia zależności od systemu MS-DOS[1], jednak może to być ominięte[2]. W systemie DOS plik uruchamiany jest jednorazowo przy starcie, po przetworzeniu pliku CONFIG.SYS
, natomiast w Windows 95 i Windows 98 przed załadowaniem interfejsu graficznego. Systemy Windows NT, Windows XP oraz Windows Vista odczytują zawartość pliku w trakcie logowania się użytkownika. Począwszy od Windows Me, zawartość niebędąca zmienną środowiskową jest ignorowana[3]. W przeciwieństwie do CONFIG.SYS
, polecenia zapisane w pliku wsadowym mogą być wprowadzone do interaktywnego interpretera poleceń.
Program AUTOEXEC.BAT służy przede wszystkim do ustawiania zmiennych systemowych, ładowania sterowników i uruchamiania programów działających w tle, ewentualnie do uruchamiania nakładki systemowej. Może być także wykorzystywany do ładowania narzędzi systemowych niskiego poziomu, takich jak:
- skanery antywirusowe
- oprogramowanie funkcji buforu dysku twardego – np.
SMARTDRV.EXE
firmy Microsoft - sterowniki myszy
- sterowniki klawiatury
- sterowniki CD-ROM-ów
- innych sterowników
Przykłady pliku autoexec.bat
We wczesnych wersjach systemu DOS zawartość pliku była bardzo prosta – polecenia DATE
i TIME
były niezbędne, ponieważ pierwsze komputery klasy XT nie posiadały baterii utrzymującej zegar czasu rzeczywistego.
ECHO OFF CLS DATE TIME VER
Znaczenie poleceń:
ECHO OFF
– nie wyświetlaj w linii poleceń nazw kolejnych otrzymywanych komendCLS
– czyści zawartość ekranuDATE
– wyświetla bieżącą datę, umożliwiając użytkownikowi jej zmianęTIME
– działa podobnie do poleceniaDATE
, dotyczy jedynie czasuVER
– wyświetla wersję systemu.
W wersjach międzynarodowych dodawany był także sterownik klawiatury dopasowany do układu znaków danego kraju (np. KEYBR.SYS
dla francuskiego układu). Późniejsze wersje często zawierały sterowniki firm trzecich. Poniżej znajduje się zawartość pliku AUTOEXEC.BAT
z wersji DOS 5.x (po instalacji systemu Windows) zawierająca jedynie najważniejsze polecenia:
@ECHO OFF PROMPT $P$G PATH C:\DOS;C:\WINDOWS SET TEMP=C:\TEMP SET BLASTER=A220 I7 D1 T2 LH SMARTDRV.EXE LH DOSKEY LH MOUSE.COM /Y WIN
Znaczenie poleceń:
@ECHO OFF
– nie wyświetlaj w linii poleceń kolejnych otrzymanych komend, znak @ oznacza, że to polecenie również nie ma być wyświetloneSET PATH=C:\DOS;C:\WINDOWS
– ustaw zmienną środowiskowąPATH
na wartość C:\DOS;C:\. Oznacza to szukanie nieznanych poleceń w folderze C:\DOS, a następnie C:\WINDOWSSET TEMP=C:\TEMP
– ustaw zmienną środowiskowąTEMP
na wartość C:\TEMP. Jest to zmienna określająca położenie folderu dla plików tymczasowych.SET BLASTER=A220 I7 D1 T2
– ustaw zmienną środowiskową BLASTER na wartość A220 I7 D1 T2. Jest to zmienna wykorzystywana przez obsługę kart dźwiękowych Sound Blaster.LH(inne języki) SMARTDRV.EXE
– ładowanie do pamięci górnej sterownika buforu dysku twardegoLH MOUSE.COM
– ładowanie do pamięci górnej sterownika myszyWIN
– załadowanie systemu Windows poprzez program rozruchowyWIN.COM
Takie zdefiniowanie pliku konfiguruje zmienne środowiskowe, wczytuje funkcje SmartDrive oraz ładuje do pamięci sterowniki myszy przed uruchomieniem systemu Windows. Polecenie PROMPT
z parametrem $P$G
ustawia znak zachęty do postaci C:\>
zamiast C>
.
Ogółem sterowniki.SYS wczytywane były przez plik CONFIG.SYS
, a pliki wykonywalne (.EXE) np. SmartDrive przez AUTOEXEC.BAT
Niektóre urządzenia, np. myszy mogły mieć ładowane sterowniki zarówno w postaci plików.SYS przez plik CONFIG, jak i plików COM przez AUTOEXEC, w zależności od producenta[4].
Linie rozpoczynające się od polecenia REM
są traktowane jako komentarze i ignorowane w trakcie przetwarzania pliku. Polecenie REM
często stosowane jest do tymczasowego pominięcia sterownika urządzenia (np. CD-ROM). Jako alternatywa istnieje mniej używany zapis składający się z podwójnego dwukropka (::
).
W systemie MS-DOS 6 i nowszych można utworzyć menu rozruchowe. Funkcja ta jest używana przez użytkowników chcących mieć różne konfiguracje startowe dla różnych aplikacji, np. gier dla systemów DOS lub dla systemu Windows. Poniżej przykład takiego menu:
@ECHO OFF PROMPT $P$G PATH C:\DOS;C:\WINDOWS SET TEMP=C:\TEMP SET BLASTER=A220 I7 D1 T2 GOTO %CONFIG% :WIN LH SMARTDRV.EXE LH MOUSE.COM /Y WIN GOTO END :XMS LH SMARTDRV.EXE LH DOSKEY GOTO END :END
Znaczenie niektórych poleceń:
GOTO %CONFIG%
– nakazuje interpretorowi poleceń wykonać instrukcje z plikuCONFIG.SYS
. Polecenie to może być również użyte do ładowania innego zakresu instrukcji. Na końcu każdego zakresu występuje poleceniegoto END
przekierowujące do końcowej sekcji pliku. Wszystkie polecenia występujące po:END
są ładowane przy wybraniu każdego wariantu menu.:WIN
– zakres instrukcji ładowanych przy uruchamianiu systemu Windows:XMS
– instrukcje wybrane przy uruchamianiu systemu DOS z pamięcią rozszerzonąLH DOSKEY
– załadowanie do pamięci górnej programu DOSKEY dodającego do interpretera poleceń funkcję m.in. historii wprowadzonych poleceń
Podwójny rozruch systemu DOS oraz Windows 9x
W trakcie instalacji Windows 95 w istniejące już środowisko DOS/Windows, pliki CONFIG.SYS
i AUTOEXEC.BAT
otrzymują nazwy CONFIG.DOS
i AUTOEXEC.DOS
. Jest to celowy mechanizm, mający ułatwić podwójny rozruch między systemem Windows 9x a DOS. W trakcie ładowania tekstowego systemu pliki.DOS tymczasowo zmieniane są do CONFIG.SYS
i AUTOEXEC.BAT
, natomiast pliki Windows 9x mają zmieniane rozszerzenie do .W40
.
Windows 9x w trakcie instalacji umieszcza również fałszywy plik MSDOS.SYS
. Plik ten zawiera pewne instrukcje sterujące rozruchem systemu, np. czy automatycznie ma się załadować interfejs graficzny. Odpowiada za to opcja „BootGUI”, której wartość „0” uruchamia system w trybie tekstowym, wtedy włączenie interfejsu graficznego możliwe jest poleceniem WIN
.
Przy instalacji systemu Caldera DR-DOS w wersji 7.02 lub nowszej, plik rozruchowy systemu Windows zachowuje swoją nazwę, a plik z DR-DOS ma wtedy nazwę AUTODOS7.BAT
. Różnicy podlega także CONFIG.SYS
występujący w DR-DOS pod nazwą DCONFIG.SYS
[5].
OS/2 / NT
W systemie Windows NT i jego pochodnych (Windows 2000, Windows XP, Windows Vista, Windows 7, Windows 8) odpowiednikiem jest AUTOEXEC.NT umieszczony w folderze %SystemRoot%\system32
. Plik nie jest jednak uruchamiany przy starcie systemu, ale podczas ładowania emulowanego środowiska MS-DOS.
AUTOEXEC.BAT
w systemie Windows NT często może być odnaleziony w głównym katalogu partycji systemowej. Windows odczytuje jedynie polecenia SET
i PATH
w celu zdefiniowania zmiennych środowiskowych dla wszystkich użytkowników. Konfigurowanie zmiennych poprzez ten plik może być przydatne w sytuacjach, gdy z tej samej partycji (musi być w systemie FAT) odbywa się rozruch MS-DOS. Jest to jednak rzadko wykorzystywane, dlatego też plik zwykle jest pusty. Aplet TweakUI opracowany przez Microsoft umożliwia kontrolę przetwarzania AUTOEXEC przy logowaniu.
OS/2 nie wykorzystywał AUTOEXEC.BAT
, korzystając w zamian z pliku wsadowego startup.cmd
.
Zobacz też
Przypisy
- ↑ Microsoft: „Subst” Command Does Not Work in Autoexec.bat File in Windows Millennium Edition. support.microsoft.com. (ang.).
- ↑ Some features of MS-DOS 8.0. [dostęp 2010-11-21]. [zarchiwizowane z tego adresu (2010-10-22)].
- ↑ Microsoft: INFO: Configuring Parsing of the AUTOEXEC.BAT File. support.microsoft.com. (ang.).
- ↑ Mouse Doesn’t Work with MS-DOS Shell.
- ↑ DRDOS 7.03 User Guide. [zarchiwizowane z tego adresu (2016-11-05)]. (ang.).
Linki zewnętrzne
- Windows 98 Config.txt File (ang.)