Complete List of MS-DOS Commands

Here's every single MS-DOS command there ever was

Screenshot of the CHKDSK command in MS-DOS 6.22
CHKDSK Command (MS-DOS 6.22).

DOS commands are the commands available in MS-DOS that are used to interact with the operating system and other command line based software.

Unlike in Windows, DOS commands are the primary way in which you use the operating system. Windows and other modern OSs use a graphics-based system designed for touch or a mouse.

DOS Commands in Windows: If you use Windows (like Windows 10, 8, 7, etc.) then you have no need for DOS commands because you don't have MS-DOS. The commands in Windows are available from the Command Prompt and are called Command Prompt commands or CMD commands, but they are not DOS commands.

Instead, check out our List of Windows CMD Commands for all of the command-line options you have available to you in Windows. We also have a command comparison table to show which commands are available in different Microsoft operating systems.

Below is a complete list of MS-DOS commands, commonly referred to as just DOS commands, available as of MS-DOS 6.22:

MS-DOS Command List
Command Description
Append The append command can be used by programs to open files in another directory as if they were located in the current directory.
Assign The assign command is used to redirect drive requests to a different drive. This command can also show drive assignments and reset drive letters to their original assignments.
Attrib The attrib command is used to change the attributes of a single file or a directory.
Break The break command sets or clears extended CTRL+C checking on DOS systems.
Call The call command is used to run a script or batch program from within another script or batch program. The call command has no effect outside of a script or batch file. In other words, running the call command at the MS-DOS prompt will do nothing.
Cd The cd command is the shorthand version of the chdir command.
Chcp The chcp command displays or configures the active code page number.
Chdir The chdir command is used to display the drive letter and folder that you are currently in. Chdir can also be used to change the drive and/or directory that you want to work in.
Chkdsk The chkdsk command often referred to as check disk, is used to identify and correct certain hard drive errors.
Choice The choice command is used within a script or batch program to provide a list of choices and return the value of that choice to the program.
Cls The cls command clears the screen of all previously entered commands and other text.
Command The command command starts a new instance of the command.com command interpreter.
Copy The copy command does simply that - it copies one or more files from one location to another.
Country The country command is used in the CONFIG.SYS file to tell MS-DOS to use country-specific text conventions during processing.
Ctty The ctty command is used to change the default input and output devices for the system.
Date The date command is used to show or change the current date.
Dblspace The dblspace command is used to create or configure DoubleSpace compressed drives.
Debug The debug command starts Debug, a command line application used to test and edit programs.
Defrag The defrag command is used to defragment a drive you specify. The defrag command is the command line version of Microsoft's Disk Defragmenter.
Del The del command is used to delete one or more files. The del command is the same as the erase command.
Deltree The deltree command is used to delete a directory and all the files and subdirectories within it.
Device The device command is used in the CONFIG.SYS file to load device drivers into memory.
Devicehigh The devicehigh command is used in the CONFIG.SYS file to load device drivers into upper memory.
Dir The dir command is used to display a list of files and folders contained inside the folder that you are currently working in. The dir command also displays other important information like the hard drive's serial number, the total number of files listed, their combined size, the total amount of free space left on the drive, and more.
Diskcomp The diskcomp command is used to compare the contents of two floppy disks.
Diskcopy The diskcopy command is used to copy the entire contents of one floppy disk to another.
Dos The dos command is used in the CONFIG.SYS file to specify the memory location for DOS.
Doskey The doskey command is used to edit command lines, create macros, and recall previously entered commands.
Dosshell The dosshell command starts DOS Shell, a graphical file management tool for MS-DOS. The dosshell command was only available up to MS-DOS 6.0 but most MS-DOS 6.22 installations were upgrades from previous versions so the dosshell command is usually still available.
Drvspace The drvspace command is used to create or configure DriveSpace compressed drives. DriveSpace, executed using the drvspace command, is an updated version of DoubleSpace. DriveSpace is an updated version of DoubleSpace, executed using the dblspace command.
Echo The echo command is used to show messages, most commonly from within script or batch files. The echo command can also be used to turn the echoing feature on or off.
Edit The edit command starts the MS-DOS Editor tool which is used to create and modify text files.
Edlin The edlin command starts the Edlin tool which is used to create and modify text files from the command line. Edlin was only available up to MS-DOS 5.0 so unless your version of MS-DOS 6.22 was upgraded from 5.0, you likely won't see the edlin command.
Emm386 The emm386 command is used to give MS-DOS access to more than 640 KB of memory.
Exe2bin The exe2bin command is used to convert .EXE files to binary format.
Erase The erase command is used to delete one or more files. The erase command is the same as the del command.
Exit The exit command is used to end the command.com session that you're currently working in.
Expand The expand command is used to extract the files and folders contained in Microsoft Cabinet (CAB) files.
Fasthelp The fasthelp command provides more detailed information on any of the other MS-DOS commands.
Fastopen The fastopen command is used to add a program's hard drive location to a special list stored in memory, potentially improving the program's launch time by removing the need for MS-DOS to locate the application on the drive.
Fc The fc command is used to compare two individual or sets of files and then show the differences between them.
Fcbs The fcbs command is used in the CONFIG.SYS file to specify the number of file-control blocks for file sharing.
Fdisk The fdisk command is used to create, manage, and delete hard drive partitions.
Files The files command is used in the CONFIG.SYS file to specify the maximum number of files that can be open at the same time.
Find The find command is used to search for a specified text string in one or more files.
For The for command is used to run a specified command for each file in a set of files. The for command is most often used within a batch or script file.
Format The format command is used to format a drive in the file system that you specify.
Goto The goto command is used in a batch or script file to direct the command process to a labeled line in the script.
Graphics The graphics command is used to load a program that can print graphics.
Help The help command provides more detailed information on any of the other Command Prompt or MS-DOS commands.
If The if command is used to perform conditional functions in a batch file.
Include The include command is used in the CONFIG.SYS file to allow you to use the commands from one CONFIG.SYS block within another.
Install The install command is used in the CONFIG.SYS file to load memory-resident programs into conventional memory.
Interlnk The interlnk command is used to connect two computers via a serial or parallel connection to share files and printers.
Intersvr The intersvr command is used to start the Interlnk server and to copy Interlnk files from one computer to another.
Join The join command is used to attach a drive letter to a directory located on another drive. It's similar to the subst command which associates a drive letter with a local directory.
Keyb The keyb command is used to configure a keyboard for a specific language.
Label The label command is used to manage the volume label of a disk.
Lastdrive The lastdrive command is used in the CONFIG.SYS file to set the maximum number of drives that can be accessed.
Lh The lh command is the shorthand version of the loadhigh command.
Loadfix The loadfix command is used to load the specified program in the first 64K of memory and then runs the program.
Loadhigh The loadhigh command is used to load a program into high memory and is usually used from within the autoexec.bat file.
Md The md command is the shorthand version of the mkdir command.
Mem The mem command shows information about used and free memory areas and programs that are currently loaded into memory in the MS-DOS subsystem.
Memmaker The memmaker command is used to start MemMaker, a memory optimization tool.
Menucolor The menucolor command is used in the CONFIG.SYS file to set text colors.
Menudefault The menudefault command is used in the CONFIG.SYS file to set the startup configuration that will be used if no key is pressed within the specified timeout period.
Menuitem The menuitem command is used in the CONFIG.SYS file to create a startup menu from which you can select a group of CONFIG.SYS commands to be processed upon reboot.
Mkdir The mkdir command is used to create a new folder.
Mode The mode command is used to configure system devices, most often COM and LPT ports.
More The more command is used to display the information contained in a text file. The more command can also be used to paginate the results of any other Command Prompt or MS-DOS command.
Move The move command is used to move one or files from one folder to another. The move command is also used to rename directories.
Msav The msav command starts Microsoft Antivirus.
Msbackup The msbackup command starts Microsoft Backup, a tool used to back up and restore one or more files.
Mscdex The mscdex command is used to provide CD-ROM access to MS-DOS.
Msd The msd command starts Microsoft Diagnostics, a tool used to display information about your computer.
Nlsfunc The nlsfunc command is used to load information specific to a particular country or region.
Numlock The numlock command is used in the CONFIG.SYS file to specify the state of the NumLock key.
Path The path command is used to display or set a specific path available to executable files.
Pause The pause command is used within a batch or script file to pause the processing of the file. When the pause command is used, a "Press any key to continue…" message displays in the command window.
Power The power command is used to reduce the power consumed by a computer by monitoring software and hardware devices.
Print The print command is used to print a specified text file to a specified printing device.
Prompt The prompt command is used to customize the appearance of the prompt text in Command Prompt or MS-DOS.
Qbasic The qbasic command starts QBasic, the MS-DOS based programming environment for the BASIC programming language.
Rd The rd command is the shorthand version of the rmdir command.
Rem The rem command is used to record comments or remarks in a batch or script file.
Ren The ren command is the shorthand version of the rename command.
Rename The rename command is used to change the name of the individual file that you specify.
Replace The replace command is used to replace one or more files with one or more other files.
Restore The restore command is used to restore files that were backed up using the backup command. The backup command was only available up to MS-DOS 5.00 but the restore command was included by default with later versions of MS-DOS to provide a way to restore files that were backed up in previous versions of MS-DOS.
Rmdir The rmdir command is used to delete an existing or completely empty folder.
Scandisk The scandisk command is used to start Microsoft ScanDisk, a disk repair program.
Set The set command is used to display, enable, or disable environment variables in MS-DOS or from the Command Prompt.
Setver The setver command is used to set the MS-DOS version number that MS-DOS reports to a program.
Share The share command is used to install file locking and file sharing functions in MS-DOS.
Shell The shell command is used in the CONFIG.SYS file to specify the command interpreter that DOS should use.
Shift The shift command is used to change the position of replaceable parameters in a batch or script file.
Smartdrv The smartdrv command installs and configures SMARTDrive, a disk caching utility for MS-DOS.
Sort The sort command is used to read data from a specified input, sort that data, and return the results of that sort to the Command Prompt screen, a file, or another output device.
Stacks The stacks command is used in the CONFIG.SYS file to set the number and size of stack frames.
Submenu The submenu command is used in the CONFIG.SYS file to create a multi-level menu from which you can select startup options.
Subst The subst command is used to associate a local path with a drive letter. The subst command is a lot like the net use command in Windows except a local path is used instead of a shared network path. The subst command replaced the assign command beginning with MS-DOS 6.0.
Switches The switches command is used in the CONFIG.SYS file to configure DOS in a special way, like to tell DOS to emulate different hardware configurations.
Sys The sys command is used to copy the MS-DOS system files and command interpreter to a disk. The sys command is used most often to create a simple bootable disk or hard drive.
Time The time command is used to show or change the current time.
Tree The tree command is used to graphically display the folder structure of a specified drive or path.
Type The type command is used to display the information contained in a text file.
Undelete The undelete command is used to undo a deletion performed with the MS-DOS delete command.
Unformat The unformat command is used to undo the formatting on a drive performed by the MS-DOS format command.
Ver The ver command is used to display the current MS-DOS version number.
Verify The verify command is used to enable or disable the ability of Command Prompt, or MS-DOS, to verify that files are written correctly to a disk.
Vol The vol command shows the volume label and a serial number of a specified disk, assuming this information exists.
Vsafe The vsafe command is used to start VSafe, a basic virus protection system for MS-DOS.
Xcopy The xcopy command can copy one or more files or directory trees from one location to another. The xcopy command is generally considered a more "powerful" version of the copy command though the robocopy command trumps even xcopy.

If you're interested, we also keep Windows-specific lists, which you can find in these Windows 8 commandsWindows 7 commandsWindows Vista commands, and Windows XP commands documents.