Mi az a CMD fájl?
A CMD-fájl egy parancsfájlból áll, amely egy vagy több parancsot tartalmaz egyszerű szöveg formájában, amelyek különböző feladatok végrehajtására futnak. Ez hasonló a BAT fájlhoz, amelyet általában végrehajtható parancsok kötegének tárolására is használnak. A CMD fájlokat széles körben használják a Microsoft Windows operációs rendszerben. Ezeket a fájlokat a 90-es években vezették be, de még mindig a legújabb Windows operációs rendszerben használják. Ezeket a fájlokat általában úgy írják, hogy egynél több parancsot hajtsanak végre egy sorozatban.
CMD fájlformátum
A CMD a CP/M stílusú futtatható programok által használt fájlformátum. Általában összehasonlítható a COM-vel CP/M-80-ban és EXE-vel DOS-ban. Egy CMD-fájl 1-8 kód- vagy adatcsoportot és egy 128 bájtos fejlécet tartalmaz. Minden csoport legfeljebb 1 MB méretű lehet. A CMD-fájlok későbbi verzióiban áthelyezési információkat és Resident System Extensions-eket (RSX) is tartalmazhatnak. A CMD új a BAT fájlhoz képest; MS-DOS-hoz használták a Windows kiadása előtt MS-DOS-ban. Bár ma is menthet fájlokat .bat kiterjesztéssel, sokan a .cmd kiterjesztést használják futtatható szkriptjeik mentésére.
CMD formátum specifikáció
A fejléc elején található a fájlban található csoportok listája típusaikkal együtt. Mindegyik típus legfeljebb egyszer használható. Ezek a típusok:
- Kód
- Adatok
- Extra
- Kazal
- Felhasználó 1
- Felhasználó 2
- Felhasználó 3
- Felhasználó 4
- Megosztott kód
A DOS-ban a Program Segment Prefixhez hasonlóan az adatcsoport első 256 bájtja nulla. Ezeket a CP/M-86 fogja kitölteni a nulla oldallal. Ha nincs adatcsoport, akkor helyette a kódcsoport első 256 bájtja kerül felhasználásra.
CMD fájl példa
Az alábbiakban egy példa látható a rendszerinformációkat megjelenítő CMD-szkriptre.
@ECHO OFF
:: This CMD script provides you with your operating system, hardware and network information.
TITLE My System Info
ECHO Please wait... Gathering system information.
ECHO =========================
ECHO OPERATING SYSTEM
systeminfo | findstr /c:"OS Name"
systeminfo | findstr /c:"OS Version"
ECHO =========================
ECHO BIOS
systeminfo | findstr /c:"System Type"
ECHO =========================
ECHO MEMORY
systeminfo | findstr /c:"Total Physical Memory"
ECHO =========================
ECHO CPU
wmic cpu get name
ECHO =========================
ECHO NETWORK ADDRESS
ipconfig | findstr IPv4
ipconfig | findstr IPv6
PAUSE