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 my List of Windows CMD Commands for all of the command-line options you have available to you in Windows. I also created a command comparison table to show which commands are available in different Microsoft operating systems.

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

CommandDescription
AppendThe append command can be used by programs to open files in another directory as if they were located in the current directory.
AttribThe attrib command is used to change the attributes of a single file or a directory.
BreakThe break command sets or clears extended CTRL+C checking on DOS systems.
CallThe 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.
CdThe cd command is the shorthand version of the chdir command.
ChcpThe chcp command displays or configures the active code page number.
ChdirThe 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.
ChkdskThe chkdsk command often referred to as check disk, is used to identify and correct certain hard drive errors.
ChoiceThe 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.
ClsThe cls command clears the screen of all previously entered commands and other text.
CommandThe command command starts a new instance of the command.com command interpreter.
CopyThe copy command does simply that - it copies one or more files from one location to another.
CttyThe ctty command is used to change the default input and output devices for the system.
DateThe date command is used to show or change the current date.
DblspaceThe dblspace command is used to create or configure DoubleSpace compressed drives.
DebugThe debug command starts Debug, a command line application used to test and edit programs.
DefragThe defrag command is used to defragment a drive you specify. The defrag command is the command line version of Microsoft's Disk Defragmenter.
DelThe del command is used to delete one or more files. The del command is the same as the erase command.
DeltreeThe deltree command is used to delete a directory and all the files and subdirectories within it.
DirThe 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.
DiskcompThe diskcomp command is used to compare the contents of two floppy disks.
DiskcopyThe diskcopy command is used to copy the entire contents of one floppy disk to another.
DoskeyThe doskey command is used to edit command lines, create macros, and recall previously entered commands.
DosshellThe 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.
DrvspaceThe 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.
EchoThe 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.
EditThe edit command starts the MS-DOS Editor tool which is used to create and modify text files.
EdlinThe 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.
Emm386The emm386 command is used to give MS-DOS access to more than 640 KB of memory.
EraseThe erase command is used to delete one or more files. The erase command is the same as the del command.
ExitThe exit command is used to end the command.com session that you're currently working in.
ExpandThe expand command is used to extract the files and folders contained in Microsoft Cabinet (CAB) files.
FasthelpThe fasthelp command provides more detailed information on any of the other MS-DOS commands.
FastopenThe 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.
FcThe fc command is used to compare two individual or sets of files and then show the differences between them.
FdiskThe fdisk command is used to create, manage, and delete hard drive partitions.
FindThe find command is used to search for a specified text string in one or more files.
ForThe 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.
FormatThe format command is used to format a drive in the file system that you specify.
GotoThe goto command is used in a batch or script file to direct the command process to a labeled line in the script.
GraphicsThe graphics command is used to load a program that can print graphics.
HelpThe help command provides more detailed information on any of the other Command Prompt or MS-DOS commands.
IfThe if command is used to perform conditional functions in a batch file.
InterlnkThe interlnk command is used to connect two computers via a serial or parallel connection to share files and printers.
IntersvrThe intersvr command is used to start the Interlnk server and to copy Interlnk files from one computer to another.
KeybThe keyb command is used to configure a keyboard for a specific language.
LabelThe label command is used to manage the volume label of a disk.
LhThe lh command is the shorthand version of the loadhigh command.
LoadfixThe loadfix command is used to load the specified program in the first 64K of memory and then runs the program.
LoadhighThe loadhigh command is used to load a program into high memory and is usually used from within the autoexec.bat file.
MdThe md command is the shorthand version of the mkdir command.
MemThe mem command shows information about used and free memory areas and programs that are currently loaded into memory in the MS-DOS subsystem.
MemmakerThe memmaker command is used to start MemMaker, a memory optimization tool.
MkdirThe mkdir command is used to create a new folder.
ModeThe mode command is used to configure system devices, most often COM and LPT ports.
MoreThe 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.
MoveThe move command is used to move one or files from one folder to another. The move command is also used to rename directories.
MsavThe msav command starts Microsoft Antivirus.
MsbackupThe msbackup command starts Microsoft Backup, a tool used to back up and restore one or more files.
MscdexThe mscdex command is used to provide CD-ROM access to MS-DOS.
MsdThe msd command starts Microsoft Diagnostics, a tool used to display information about your computer.
NlsfuncThe nlsfunc command is used to load information specific to a particular country or region.
PathThe path command is used to display or set a specific path available to executable files.
PauseThe 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.
PowerThe power command is used to reduce the power consumed by a computer by monitoring software and hardware devices.
PrintThe print command is used to print a specified text file to a specified printing device.
PromptThe prompt command is used to customize the appearance of the prompt text in Command Prompt or MS-DOS.
QbasicThe qbasic command starts QBasic, the MS-DOS based programming environment for the BASIC programming language.
RdThe rd command is the shorthand version of the rmdir command.
RemThe rem command is used to record comments or remarks in a batch or script file.
RenThe ren command is the shorthand version of the rename command.
RenameThe rename command is used to change the name of the individual file that you specify.
ReplaceThe replace command is used to replace one or more files with one or more other files.
RestoreThe 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.
RmdirThe rmdir command is used to delete an existing or completely empty folder.
ScandiskThe scandisk command is used to start Microsoft ScanDisk, a disk repair program.
SetThe set command is used to display, enable, or disable environment variables in MS-DOS or from the Command Prompt.
SetverThe setver command is used to set the MS-DOS version number that MS-DOS reports to a program.
ShareThe share command is used to install file locking and file sharing functions in MS-DOS.
ShiftThe shift command is used to change the position of replaceable parameters in a batch or script file.
SmartdrvThe smartdrv command installs and configures SMARTDrive, a disk caching utility for MS-DOS.
SortThe 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.
SubstThe 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.
SysThe 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.
TimeThe time command is used to show or change the current time.
TreeThe tree command is used to graphically display the folder structure of a specified drive or path.
TypeThe type command is used to display the information contained in a text file.
UndeleteThe undelete command is used to undo a deletion performed with the MS-DOS delete command.
UnformatThe unformat command is used to undo the formatting on a drive performed by the MS-DOS format command.
VerThe ver command is used to display the current MS-DOS version number.
VerifyThe 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.
VolThe vol command shows the volume label and a serial number of a specified disk, assuming this information exists.
VsafeThe vsafe command is used to start VSafe, a basic virus protection system for MS-DOS.
XcopyThe 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, I also keep Windows-specific lists, which you can find in these Windows 8 commandsWindows 7 commandsWindows Vista commands, and Windows XP commands documents.