AUTOEXEC.BAT

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj

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[edytuj | edytuj kod]

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ść nie bę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:

Przykłady pliku autoexec.bat[edytuj | edytuj kod]

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 komend
  • CLS – czyści zawartość ekranu
  • DATE – wyświetla bieżącą datę, umożliwiając użytkownikowi jej zmianę
  • TIME – działa podobnie do polecenia DATE, dotyczy jedynie czasu
  • VER – 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świetlone
  • SET 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:\WINDOWS
  • SET 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 I5 D1 H5 P330 E620 T6 - ustaw zmienną środowiskową BLASTER na wartość A220 I7 D1 T2. Jest to zmienna wykorzystywana przez obsługę kart dźwiękowych Sound Blaster.
  • LH SMARTDRV.EXE - ładowanie do pamięci górnej sterownika buforu dysku twardego
  • LH MOUSE.COM - ładowanie do pamięci górnej sterownika myszy
  • WIN - załadowanie systemu Windows poprzez program rozruchowy WIN.COM

Takie zdefiniowanei 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 pliku CONFIG.SYS. Polecenie to może być również użyte do ładowania innego zakresu instrukcji. Na końcu każdego zakresu występuje polecenie goto 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[edytuj | edytuj kod]

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[edytuj | edytuj kod]

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 także[edytuj | edytuj kod]

Przypisy

Linki zewnętrzne[edytuj | edytuj kod]