Paketna datoteka je datoteka, ki jo uporablja operacijski sistem Windows®, DOS ali OS/2. To je besedilna datoteka, ki vsebuje niz ukazov, ki jih mora tolmač ukazov razlagati po vrstnem redu. To pomeni, da lahko ena datoteka izvaja zapleteno razporeditev ukazov, pogosto izvaja več programov, da doseže en sam povezan cilj. Sistemski skrbniki jih pogosto uporabljajo za avtomatizacijo dolgih projektov, nekateri programi, ki niso v celoti zbrani v en program, pa lahko uporabijo paketno datoteko za zagon potrebnih komponent in nato zagon končnega programa.
Razširitev .bat je najpogosteje uporabljena razširitev za paketno datoteko in jo bodo prepoznale tako rekoč vse lupine. Sodobnejše lupine lahko sprejmejo tudi razširitev .cmd, običajno pa je razlika med obema povezana s tem, kakšne so ravni napak, se pravi, kdaj bodo prikazane napake. V 4DOS in drugih podobnih lupinah lahko uporabljajo tudi razširitev .btm, čeprav tega drugi operacijski sistemi ne prepoznajo.
V starejših računalnikih z operacijskim sistemom Windows® in računalnikih DOS obstaja osnovna datoteka, znana kot autoexec.bat, ki se zažene vsakič, ko se računalnik zažene. To vključuje številne običajne datoteke, ki jih je treba zagnati, in ukaze, ki jih je treba zagnati, da se sistem pripravi na delovanje. Datoteki autoexec.bat lahko dodate nekaj stvari, da nastavite posebno vedenje ob zagonu, kot je zagon programov, čiščenje datotečnih prostorov ali odmeva opomnikov.
Ker je paketna datoteka v bistvu le besedilna datoteka, jo je mogoče ustvariti v katerem koli preprostem urejevalniku besedil, končnico pa lahko pozneje spremenite v .bat ali .cmd. Večina ljudi meni, da je najlažje preprosto urediti enega iz ukazne vrstice, bodisi neposredno v DOS-u bodisi v oknu lupine, ki se zažene iz sistema Windows®. Ukaz za urejanje lahko uporabite za ustvarjanje nove datoteke, tako da vnesete nekaj, kot je edit foo.bat. Znotraj datoteke je mogoče uporabiti vrsto osnovnih ukazov.
Preprosta paketna datoteka lahko vključuje nekaj naslednjega: pavza; echo Zdaj odpremo mapo z dokumenti.;dir c:documents. Za izvedbo datoteke bi uporabnik preprosto vtipkal ime datoteke brez pripone .bat in bi se zagnala. Ta posebna datoteka bi se začela s premorom, ki bi uporabnika pozval, da pritisne tipko. Ko bi pritisnili tipko, bi nato natisnil vrstico: “Zdaj odpremo mapo z dokumenti.” Nato bi navedel vsebino imenika Dokumenti, ki se nahaja v pogonu C.
Dejansko obstaja kar nekaj ukazov, ki jih je mogoče uporabiti v paketni datoteki, da jih dodatno prilagodite. Na primer, spremenljivka %1 se lahko uporabi za tiskanje spremenljivke, ki jo uporabnik vnese, potem ko vnese ime datoteke za izvedbo. Če bi na primer nekdo želel odstraniti imenik in ustvariti nov imenik v enem ukazu, bi lahko ustvaril datoteko z imenom rmmk.bat, ki bi vsebovala naslednje vrstice: rmdir %1; mkdir %2. Nato ga je lahko izvedel tako, da vnese nekaj, kot je “rmmk foo bar”, kar bi odstranilo imenik z imenom foo in ustvarilo nov imenik z imenom bar.