- List of DOS commands
A partial list of the most common commands for
Microsoft 'sMS-DOS operating system follows. It contains also a few Win32 command line tools which can't run in DOS. In versions 5 of DOS and later only, the user can get help by typing HELP at the shell prompt. (Before version 6, the help displayed by this command is very basic and not interactive.) In the interactive help of versions 6 and later, square brackets indicate optional parameters, while italicized items should be replaced with specific values.In DOS version 5 or later, to get help on a DOS command, at the DOS prompt, type /? after the command name. For example, to get help for the xcopy command, type the following at the DOS prompt:
xcopy /?The operating system will execute the command and the "/?" parameter display a help page about itself, in this case xcopy. To view this help page, see the xcopy entry on this page.
In the list below, when a command can accept more than one filename, or a filename including wildcards (* and ?), it is said to accept a "filespec" parameter. Commands that can accept only a single filename are said to accept a "filename" parameter.
For most of the commands, the
Unix equivalent is given. It should be noted that Unix commands typically provide ranges of functionality and flexibility that are not approached by the equivalent DOS command, so all comparisons are approximate. For example, the DOS commandscopy
andxcopy
are said to be equivalent to the Unixcp
command, but in realitycp
has much greater power thancopy
, and a similar functionality toxcopy
.Also most of those commands are shared with other DOS'es like
DR-DOS , Enhanced DR-DOS andFreeDOS , but there are some of them having syntax differences as well as several completely different commands.More than 100 other commands are available in different releases of DOS, all of which are described in the last reference; the most useful not described here are
call
,debug
,doskey
,edit
,for
,
,goto if
,mode
, andpause
.Commands
append (External)
Display or sets the search path for data files. DOS will search the specified path(s) if the file is not found in the current path. This had some creative uses, such as allowing non-CD based games to be run from the CD, with configuration/save files stored on the HD.
append; append [d:] path [;] [d:] path [...] append [/X:on|off] [/E]
attrib :Change or view the attributes of one or more files. It defaults to displaying the attributes of all files in the current directory.Options:
*To add an attribute attach a '+' in front of it.
*To remove an attribute attach a '-' in front of it
*Attributes include
**R - Read-only
**A - Archive
**S - System
**H - Hiddenattrib [+|-ahrs] ["filespec"] :Roughly equivalent to the
Unix commands
andchattr
.lsattr cd or chdir
:Change current directory. Displays the current working directory when used without path
cd displays the current working directory on the current drive.
cd f:displays the current working directory on F:
cd "directory"change the working directory on the current drive to "directory"
chdir e:"directory"change the working directory on E: to "directory"
:Equivalent to the
Unix commandcd
(with path), or
(without path). ("cd .." changes to the parent directory.)pwd chkdsk :Verifies a hard disk or a floppy disk for file system integrity.
Options:
* /F : Fixes errors on the disk
* /V : Displays the full path and name of every file on the disk
* /P : Forces a full disk verification
* /R : Searches for defective sectors and recovers legible information (applies /F)chkdsk "drive" [path] filename] [/F] [/V] :Equivalent to the Unix command
fsck
= choice =:Allows for batch files to prompt the user to select one item from a set of single-character choices.
= cls =:Clears the screen.
cls:Equivalent to the Unix
clear
.
= copy =:Copies files from one location to another. The destination defaults to the current directory. If multiple source files are indicated, the destination must be a directory, or an error will result.
copy "filespec" ["destination"] :Equivalent to the Unix command
cp
.Files may be copied to devices (e.g. "copy file lpt1" would send the file to the printer on lpt1. "copy file con" would output to screen, which would be the same as type.Most useful to note that "copy file.txt+file2.txt file_cat.txt" will concatenate the files and output them as file_cat.txt. Which is just like the "cat" command.
When using this command to concatenate files there are two switches to modify its behaviour: copy /a alpha.txt + beta.txt gamma.txtText mode - which will copy the text content of the file, stopping when it reaches the EOF character. This is the default mode. copy /b alpha.mpg + beta.mpg gamma.mpgBinary mode - which will concatenate files in their entirety, ignoring EOF characters.
:Equivalent in RT-11/RSX-11/OpenVMS operating systems line is
copy
command.copy "device"
copy "device" "filename":In this usage, data is written from the given device to the file until the end-of-file character (ASCII character 26, which may be typed as ctrl-Z) is encountered. The most commonly used device is named con, which is short for "console"; thus,
copy con "filename"
would allow the user to type directly into a file, and press ctrl-Z when finished.:In Unix, this functionality is provided by the
cat
command.cat > "filename"
(with ctrl+D to finish) would be equivalent to the DOS commandcopy con "filename"
.:Equivalent in RT-11/RSX-11/OpenVMS operating systems line is
copy
command.defrag
:Defragments disk drive
defrag "driveletter:"
:Analyses the fragmentation of a disk drive
defrag "driveletter:" -a -v
:No Unix equivalent.
:
DR DOS equivalent was the diskopt command.
= del or erase =del "filename" erase "filename"
:Equivalent to the Unix command
rm
.:Equivalent in RT-11/RSX-11/OpenVMS operating systems line isdelete
command which can be contracted todel
.deltree :Deletes a directory along with all of the files and subdirectories that it contains. Normally, it will ask for confirmation of such a drastic action.
deltree [/y] "directory"
The /y parameter, if present, tells the
deltree
command to carry out without first prompting for confirmation.The
deltree
command is not included in recentMicrosoft Windows operating systems. Deleting a non-empty directory in those versions of Windows where the command is not included, can be achieved by using thermdir
command as in the following example:rmdir /s [/q] "directory"
In Unix, the functionality of
deltree
is provided by therm
command with the parameter-r
(or-rf
for the/y
switch).
= dir =:Lists the contents of a directory.
The "dir" command typed by itself, displays the disk's volume label and serial number; one directory or filename per line, including the filename extension, the file size in bytes, and the date and time the file was last modified; and the total number of files listed, their cumulative size, and the free space (in bytes) remaining on the disk. The command is one of the few commands that exist from the first versions of DOS. dir [drive:] [path] [filename] [parameters]
Most commonly used parameters of "dir" include:
*
/W
: Displays the listing in wide format, with as many as five filenames or directory names on each line.
*/P
: Pause at every page
*/S
: Also look in subdirectories
*/Axx
: Display files with the specified attributes only
*/Oxx
: Modifies sort order
*/B
: Uses bare format (no heading information or summary)
*> [drive:] [path] [filename]
: To Store Result in a text file;(c:dir > c:fileList.txt)Possible attributes for the
A
parameter areD
(directories),R
(read-only files),H
(hidden files),A
(files/directories with the archive bit on), andS
(system files). The prefix-
negates an attribute; attributes can be combined (e.g./A:DA
means directories with the archive bit on).Possible sort orders are
N
(name),S
(size),E
(extension),D
(date and time),A
(last access date), andG
(group directories first). The prefix-
reverses the order.The default parameters of "dir" can be set using the DIRCMD environment variable.
Equivalent to the Unix command
(the optionls -l
is "long" list format, it works the opposite way from/w
.)Equivalent in RT-11/RSX-11/OpenVMS operating systems line is
directory
command which can be contracted todir
.
= echo =:Prints its own arguments back out to the DOS equivalent of the standard output stream. Usually, this means directly to the screen, but the output of "echo" can be redirected like any other command. Often used in
batch file s to print text out to the user. echo "this is text" Outputs 'this is text' echo. Outputs a blank line:Another important use of the echo command is to toggle echoing of commands on and off in batch files. echo on turns on echoing of commands echo off turns off echoing of commands:Traditionally batch files begin with the@echo off
statement. This says to the interpreter that echoing of commands should be off during the whole execution of the batch file thus resulting in a "tidier" output. The@
symbol declares that this particular command (echo off) should also be executed without echo. For example the following 2 batch files are equivalent::Batch1.bat::Batch2.bat::Echo can be used to write to files directly from the console, by redirecting the output stream: echo "text" > "filename":Echo can also be used to append to files directly from the console, again by redirecting the output stream: echo "text" >> "filename":To type more than one line from the console into a file, use
copy con
(above).:Equivalent to the Unix commandecho
.exe2bin
:Converts an executable (.exe) file into a binary file with the extension .com, which is a memory image of the program.:The size of the resident code and data sections combined in the input .exe file must be less than 64KB. The file must also have no stack segment.
= exit =:Exits the current command processor. If the exit is used at the primary command, it has no effect unless in a DOS window under Microsoft Windows, in which case the window is closed and the user returns to the desktop.
EXIT
:Exit also exists in Unix-shells. If an exit command is used in the primary command shell under Unix, however, it will
logoff the user, similar to thecontrol-D keystroke.
= fc or comp=:Compares two files or sets of files and displays the differences between them.
FC [/A] [/C] [/L] [/LBn] [/N] [/T] [/W] [/nnnn] [drive1:] [path1] filename1 [drive2:] [path2] filename2 FC /B [drive1:] [path1] filename1 [drive2:] [path2] filename2 /A Displays only first and last lines for each set of differences. /B Performs a binary comparison. /C Disregards the case of letters. /L Compares files as ASCII text. /LBn Sets the maximum consecutive mismatches to the specified number of lines. /N Displays the line numbers on an ASCII comparison. /T Does not expand tabs to spaces. /W Compresses white space (tabs and spaces) for comparison. /nnnn Specifies the number of consecutive lines that must match after a mismatch. [drive1:] [path1] filename1 Specifies the first file or set of files to compare. [drive2:] [path2] filename2 Specifies the second file or set of files to compare.Fact|date=July 2008
::Equivalent to the Unix commands
.comm , cmp anddiff fdisk :Manipulates hard disk partition tables. The name derives from IBM's habit of calling hard drives "fixed disks". When run from the command line, it displays a menu of various partitioning operations:
1. Create DOS partition or Logical DOS Drive 2. Set active partition 3. Delete partition or Logical DOS Drive 4. Display partition information 5. Change current fixed disk drive (only available if the computer has more than one hard drive)
:FDISK /MBR installs a standard master boot record on the hard drive.
:FDISK /MBR #: where # is other partition on system. Completes above command on indicated partition. eg: "C:FDISK /MBR D:" would install boot record on D: partition.
:Fdisk exists under Unix with the same name, but it is an entirely different program. However they share purposes.
= find =:A filter to find lines in the input data stream that contain or don't contain a specified string and send these to the output data stream.
:"Find" may also be used as a pipe.
find "keyword" < "inputfilename" > "outputfilename"Searches for a text string in a file or files.
FIND [/V] [/C] [/N] [/I] "string" [drive:] [path] filename [ ...]
/V Displays all lines NOT containing the specified string. /C Displays only the count of lines containing the string. /N Displays line numbers with the displayed lines. /I Ignores the case of characters when searching for the string. "string" Specifies the text string to find. [drive:] [path] filename Specifies a file or files to search.
If a pathname is not specified, FIND searches the text typed at the promptor piped from another command.
:Equivalent to the Unix command
. The Unix commandgrep
performs an entirely different function.find format
:Delete all the files on the disk and reformat it for MS-DOS:In most cases, this should only be used on floppy drives or other removable media. This command can potentially erase everything on a computer's hard disk.:/autotest and /backup are
undocumented feature s. Both will format the drive without a confirmation prompt.format ["options"] "drive" FORMAT drive: [/V [:label] [/Q] [/F:size] [/B | /S] [/C] FORMAT drive: [/V [:label] [/Q] [/T:tracks /N:sectors] [/B | /S] [/C] FORMAT drive: [/V [:label] [/Q] [/1] [/4] [/B | /S] [/C] FORMAT drive: [/Q] [/1] [/4] [/8] [/B | /S] [/C] /V [:label] Specifies the volume label. /Q Performs a quick format. /F:size Specifies the size of the floppy disk to format (such as 160, 180, 320, 360, 720, 1.2, 1.44, 2.88). /B Allocates space on the formatted disk for system files. /S Copies system files to the formatted disk. /T:tracks Specifies the number of tracks per disk side. /N:sectors Specifies the number of sectors per track. /1 Formats a single side of a floppy disk. /4 Formats a 5.25-inch 360K floppy disk in a high-density drive. /8 Formats eight sectors per track. /C Tests clusters that are currently marked "bad."
Known as a joke among UNIX users of that time since every user on the machine could easily cause damage with just one command. Therefore, it was known in the UNIX community as "The big DOS timesaver".:There is also an undocumented /u parameter for "unconditional" that will write strings of zeros on every sector.:Equivalent to the Unix command
.:Equivalent in RT-11/RSX-11/OpenVMS operating systems line ismkfs format
command which can not create filesystem. After formatting one should useinitialize
(contracted toinit
) command to create filesystem (Equivalent to MS-DOS commandformat /q
or "quick format").fsutil
:fsutil is used to perform many tasks related to file allocation table (FAT) and NTFS file systems.
For example to determine the list of drives on your computer:
$> fsutil fsinfo drivesDrives: A: C: E: F: U:
$>
= help =:Gives help about DOS.:;MS-DOS:help 'command' would give help on a specific command. By itself, it lists the contents of DOSHELP.HLP. Help for a specific command invokes the command with the /? option. In MS-DOS 6.x this command exists as FASTHELP.:MS-DOS 6.xx help command uses
QBASIC to view a quickhelp HELP.HLP file, which contains more extensive information on the commands, with some hyperlinking etc. The MS-DOS 6.22 help system is included on Windows 9x cdrom versions as well.:;PC-DOS:PC-DOS 7.xx help uses view.exe to open OS/2 style .INF files (cmdref.inf, dosrexx.inf and doserror.inf), opening these to the appropriate pages.:;DR-DOS:In DR-DOS, help is a batch file that launches DR-DOS' online reference, dosbook.:;Microsoft Windows:Windows NT, all versions, uses DOS 5 style help, but versions before VISTA have also a Windows help file (NTCMDS.HLP or NTCMDS.INF) in a similar style to MS-DOS 6.:Partially equivalent to the Unix command man.
InterSvr / InterLnk
:MS-DOS 6 and above command used to network PCs using a
null modem cable orLapLink cable . The server-side version of InterLnk, it also immobilizes the machine it's running on as it is an active app (As opposed to a TSR) which must be running for any transfer to take place. First appeared in PC-DOS 5.02.:No direct Unix equivalent, though some Unices offer the ability to network computers with TCP/IP through null modem or Laplink cables usingPLIP orSLIP .:DR-DOS uses filelink, which is executed on both the client and server.
join
:Attaches a drive letter to a specified directory on another drive. [http://www.easydos.com/dosindex.html EasyDOS Command Index ] ]
JOIN d: [d:path] JOIN [/D] (removes drive assignment)
:If JOIN a: c:floppy were executed, c:floppy would display the contents of the a: drive. The opposite can be achieved via the subst command.
= label =:Changes the label on a logical drive, such as a hard disk partition or a floppy disk.:In Unix and Unix-like systems, this differs from filesystem to filesystem. e2label can be used for ext2 partitions.
loadfix :Loads a program above the first 64K of memory, and runs the program.
loadfix [drive:] [path] filename
= md or mkdir =:Makes a new directory. The parent of the directory specified will be created if it does not already exist.
md "directory":Equivalent to the Unix command
mkdir
.mem
:Displays memory usage.
mem:Equivalent to the Unix command
free
.memmaker
:Starting from version 6, MS-DOS included the external program MemMaker which was used to free system memory (especially
Conventional memory ) by automatically reconfiguring theAUTOEXEC.BAT andCONFIG.SYS files. This was usually done by moving TSR Programs to the Upper memory. The whole process required three system restarts. Before the first restart the user was asked whether he wanted to enable EMS Memory or not.:The use of MemMaker was popular among gamers who wanted to enable or disable
Expanded memory in order to run a game which required EMS or not. Better results could be achieved by an experienced user manually configuring the startup files to achieve greater free memory yield.Options:
* /BATCH Runs MemMaker in batch (unattended) mode. In batch mode, MemMaker takes the default action at all prompts.
* /UNDO Instructs MemMaker to undo its most recent changes.:PC-DOS uses another program RamBoost to optimize memory, either the
HIMEM /EMM386 or a third-party memory manager.
= more =:Pages through the output so that you can view more than one screen of text.
"command" | more:Equivalent to the Unix commands
more
andless
.:"More" may also be used as a filter.
more < "inputfilename"
= move =:Moves files or renames directories.
move "filename" "newname" move "driveletter:olddir" "driveletter: ewdir"
:Example: move c:old c: ew
:Equivalent to the Unix command
. DR-DOS used a separate command for renaming directories, rendir.mv msd
:Provides detailed technical information about the computer's hardware and software.
msd
:The PC-DOS version of this command is QCONFIG.
:No Unix equivalent, however in GNU/Linux similar type of information may be obtained from various text files in /proc directory.
pcpark
:Parks the hard disk heads in order to enable safe shutdown; only used on early versions.
pcpark:No Unix equivalent.
:MS-DOS 3.2 (and possibly others) used the command HHSET
= print =:Adds a file in the print queue.
Options:
* /D device : Specifies the name of the print devices. Default value is LPT1
* /P filename : Add files in the print queue
* /T : Removes all files from the print queue
* /C filename : Removes a file from the print queue This command was introduced in MS-DOS version 2. Before that there was no built-in support for background printing files. The user would usually use the copy command to copy files to LPT1.Equivalent to the Unix command
lpr
= rd or rmdir =:Remove a directory, which by default must be empty of files for the command to succeed (the /s flag removes this restriction).
rd "directory":Equivalent to the Unix command
rmdir
.rem
:Remark statement, normally used within a
batch file . An alternative way not to run a specific statement in a batch file is creating a label that will never be used, "::".:On the command line, "rem" can also be used to create a zero length file by redirecting an empty remark statement to a filename.
rem > "newfilename"
:For Windows NT/2000/XP or later, to create a zero length file can also be achieved using the
type
command. :A similar feature for manipulating files at the operating system command level was provided on IBMmainframe computer operating systems through theIEFBR14 system program. type > "newfilename":In Unix, the
#
sign can be used to start a comment; the zero-length file can be achieved using various methods, such as the touch command or dd.
= ren =:Renames a file. Unlike the
move
command, this command cannot be used to rename subdirectories, or rename files across drives.ren "filename" "newname"
A more useful function of this command is to mass rename files by the use of wildcards. For example, the following command will change the extension of all files in the current directory which currently have the extension htm to html:
ren *.htm *.html
:In Unix, this functionality of a simple move is provided by the
command, while batch renames can be done using the rename command.mv :Equivalent in RT-11/RSX-11/OpenVMS operating systems line is
rename
command which can be contracted toren
.scandisk :Disk diagnostic utility
Scandisk is a replacement for the
chkdsk
utility. Its primary advantages overchkdsk
is that it is more reliable and has the ability to run a surface scan which finds and marks bad clusters on the disk. It is present on 16/32-bit MS-DOS-based versions of Windows like Windows 95, 98, 98SE, and Me.chkdsk
has surface scan and bad cluster detection functionality built in on Windows NT based operating systems.:Equivalent to the Unix command
.fsck set
:Sets environmental variables. "See
Environment variable .":Since Windows 2000 it can be even used for command line inputs by using Parameter /P set /p choice=Type your text. echo You typed: "%choice%"share
:Installs support for file sharing and locking capabilities.
share [/F:space] [/L:locks] /F:space Allocates file space (in bytes) for file-sharing information. /L:locks Sets the number of files that can be locked at one time.
sort
:A filter to sort lines in the input data stream and send them to the output data stream.
sort < "inputfilename" > "outputfilename"
:Equivalent to the Unix command
sort
.subst :A utility to map a subdirectory to a drive letter.
subst <"d:"> <"path"> subst <"d:"> /D (Deletes the substitute drive)
:If SUBST e: c:edrive were executed, a new drive letter e: would be created, showing the contents of c:edrive. The opposite can be achieved via the join command.
= sys =:A utility to make a volume bootable.
time and date :Display and set the time and date
time date
:When these commands are called from the command line or a batch script, they will display the time or date and wait for the user to type a new time or date and press RETURN. The command 'time /t' will bypass asking the user to reset the time.
:The Unix command
date
displays both the time and date, but does not allow the normal users to change either. Users with superuser privileges may usedate -s
to change the time and date.:The Unix command
time
performs a different function.tree
:Shows the directory tree of the current directory:Options::/F (Displays the names of the files in each folder.):/A (Use ASCII instead of the extended characters.):/? (Shows the help)
tree ["options"] ["directory"]
truename
truename or truename "drivename" or truename "filename" or truename "pathname"
:If typed without a parameter then the current active drive "pathname" is displayed.
:If typed with a parameter then the command outputs the entire path (full directory and filename) of the path or filename. For example, if the working drive and directory were C:PROGRAMS and one typed
truename fish
, the output would be C:PROGRAMSFISH. This command also displays the UNC pathnames of mapped network or local CD drives. :This command is an undocumented DOS command.
:This command is similar to the Unix which command, which, given an executable found in $PATH, would give a full path and name. The C library function
realpath
performs this function.
= type =:Display a file. The more command is frequently used in conjunction with this command, e.g. type "long-text-file" | more.
type "filename":Equivalent to the Unix command
cat
.
= undelete =:Restores file previously deleted with del. By default all recoverable files in the working directory are restored. The options are used to change this behavior. If the MS-DOS mirror TSR program is used, then deletion tracking files are created and can be used by undelete.
Options :
* /list : lists the files that can be undeleted.
* /all : Recovers all deleted files without prompting. Uses a number sign for missing first character.
* /dos : Recover only MS-DOS aware files, ignore deletion tracking file.
* /dt : Recover only deletion tracking file aware files.undelete ["filespec"] ["/list"|"/all"] ["/dos"|"/dt"]
:In Unix and Unix-like systems this differs from filesystem to filesystem. People who use the
ext2 filesystem can try the command e2undel.
= ver =:Shows the version of MS-DOS you are using.:Some versions of MS-DOS support an undocumented /r switch, which will show the revision as well as the version.
ver [/r]
:Roughly equivalent to the Unix command
.uname xcopy :Copy entire directory trees.
xcopy "directory" ["destination-directory"]
:Equivalent to the Unix command
cp
when used with-r
parameter.Notes
ee also
*
Command Line Interface
*Disk Operating System
*List of Unix programs External links
* [http://www.microsoft.com/technet/archive/msdos/01_intro.mspx?mfr=true The MS-DOS 6 Technical Reference on TechNet] contains the official Microsoft MS-DOS 6 command reference documention.
* [http://www.drdos.com/dosdoc/ DR-DOS 7.03 online manual]There are several guides to DOS commands available that are licenced under the
GNU Free Documentation License :
* [http://help.fdos.org/en/index.htm The FreeDOS HTML Help] at [http://fdos.org/ fdos.org] is a fully hypertext help system for FreeDOS commands, written in 2003/2004
* [http://fd-doc.sourceforge.net/wiki/index.php The FreeDOS Spec] at SourceForge is a plaintext specification, written in 1999, for how DOS commands should work in FreeDOS
* [http://www.computerhope.com/msdos.htm MS-DOS commands]
* [http://www.windowsvistauserguide.com/vista_dos_commands.htm CMD commands in Windows Vista] up to date for the current Windows Vista OS
* [http://www.textfiles.com/hacking/MICROSOFT/dosundoc.txt A Collection of Undocumented and Obscure Features in Various MS-DOS Versions]
Wikimedia Foundation. 2010.