Are the Command Prompt and MS-DOS the same thing?What is the Windows equivalent of the Unix command cat? Get...

Manipulate scientific format without the "e"

Is divide-by-zero a security vulnerability?

Difference between 'stomach' and 'uterus'

In Adventurer's League, is it possible to keep the Ring of Winter if you manage to acquire it?

Is the set of paths between any two points moving only in units on the plane countable or uncountable?

How to mitigate "bandwagon attacking" from players?

Why do phishing e-mails use faked e-mail addresses instead of the real one?

Are paired adjectives bad style?

How can I handle a player who pre-plans arguments about my rulings on RAW?

What happened to QGIS 2.x

Make me a metasequence

At what level can a party fight a mimic?

Why is s'abonner reflexive?

Borrowing Characters

VAT refund for a conference ticket in Sweden

Practical reasons to have both a large police force and bounty hunting network?

Plagiarism of code by other PhD student

Pure Functions: Does "No Side Effects" Imply "Always Same Output, Given Same Input"?

How to make a mimic a challenging fight for high level party?

Can I become debt free or should I file for bankruptcy? How do I manage my debt and finances?

The need of reserving one's ability in job interviews

How do I deal with being jealous of my own players?

Where is the fallacy here?

Book about a time-travel war fought by computers



Are the Command Prompt and MS-DOS the same thing?


What is the Windows equivalent of the Unix command cat? Get current folder name by a DOS command?How to list hardware in DOS?CMD copy recursive, but squash directory structureWindows Command for Finding folder name with specific characters & select itFile Writing in C: driveWindows 10 - permanently change keyboard settings for cmd windowA cmd batch FOR /F command that will not open a text fileDOS Batch - Get current directory whilst in a for loopHow to pass along a filename as an argument in a .BAT file callSetting and getting Windows environment variables from the command prompt?The “FIND” command in Windows 7 Command Prompt7-Zip not working from the DOS prompt or command line?BSD fortune for Windows command prompt or DOSIs there a similar command like COLOR in MS-DOS?Command line prompt will not change directory to the C: promptWhat is the DOS-counterpart of the bash command “ls -lad” on Unix?Command Prompt Doesn't OpenMS-DOS “h” command - what is/was it, and can I get it running in a CMD prompt?windows command prompt - execute command in new process













10















I argued with my friend that the Command Prompt is just a GUI version of MS-DOS which works in the Windows forms environment. He totally disagrees with me.



Who is right?










share|improve this question




















  • 2





    What has your research told you so far?

    – slhck
    Jul 20 '12 at 12:58






  • 4





    cmd.exe is a whole different beast from MS-DOS.

    – Sathyajith Bhat
    Jul 20 '12 at 12:59








  • 7





    MS-DOS is an operating system. The Windows command prompt is an interface that looks like MS-DOS.

    – Der Hochstapler
    Jul 20 '12 at 12:59











  • "The Windows command prompt is NOT a DOS prompt!"

    – phuclv
    Nov 30 '16 at 16:45











  • Many commands will have different syntax in DOS and Windows cmd. Some commands don't exist at all in DOS

    – phuclv
    Aug 13 '18 at 17:03
















10















I argued with my friend that the Command Prompt is just a GUI version of MS-DOS which works in the Windows forms environment. He totally disagrees with me.



Who is right?










share|improve this question




















  • 2





    What has your research told you so far?

    – slhck
    Jul 20 '12 at 12:58






  • 4





    cmd.exe is a whole different beast from MS-DOS.

    – Sathyajith Bhat
    Jul 20 '12 at 12:59








  • 7





    MS-DOS is an operating system. The Windows command prompt is an interface that looks like MS-DOS.

    – Der Hochstapler
    Jul 20 '12 at 12:59











  • "The Windows command prompt is NOT a DOS prompt!"

    – phuclv
    Nov 30 '16 at 16:45











  • Many commands will have different syntax in DOS and Windows cmd. Some commands don't exist at all in DOS

    – phuclv
    Aug 13 '18 at 17:03














10












10








10


4






I argued with my friend that the Command Prompt is just a GUI version of MS-DOS which works in the Windows forms environment. He totally disagrees with me.



Who is right?










share|improve this question
















I argued with my friend that the Command Prompt is just a GUI version of MS-DOS which works in the Windows forms environment. He totally disagrees with me.



Who is right?







windows command-line cmd.exe ms-dos






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited 19 hours ago









phuclv

9,77863992




9,77863992










asked Jul 20 '12 at 12:55









user978733user978733

2652522




2652522








  • 2





    What has your research told you so far?

    – slhck
    Jul 20 '12 at 12:58






  • 4





    cmd.exe is a whole different beast from MS-DOS.

    – Sathyajith Bhat
    Jul 20 '12 at 12:59








  • 7





    MS-DOS is an operating system. The Windows command prompt is an interface that looks like MS-DOS.

    – Der Hochstapler
    Jul 20 '12 at 12:59











  • "The Windows command prompt is NOT a DOS prompt!"

    – phuclv
    Nov 30 '16 at 16:45











  • Many commands will have different syntax in DOS and Windows cmd. Some commands don't exist at all in DOS

    – phuclv
    Aug 13 '18 at 17:03














  • 2





    What has your research told you so far?

    – slhck
    Jul 20 '12 at 12:58






  • 4





    cmd.exe is a whole different beast from MS-DOS.

    – Sathyajith Bhat
    Jul 20 '12 at 12:59








  • 7





    MS-DOS is an operating system. The Windows command prompt is an interface that looks like MS-DOS.

    – Der Hochstapler
    Jul 20 '12 at 12:59











  • "The Windows command prompt is NOT a DOS prompt!"

    – phuclv
    Nov 30 '16 at 16:45











  • Many commands will have different syntax in DOS and Windows cmd. Some commands don't exist at all in DOS

    – phuclv
    Aug 13 '18 at 17:03








2




2





What has your research told you so far?

– slhck
Jul 20 '12 at 12:58





What has your research told you so far?

– slhck
Jul 20 '12 at 12:58




4




4





cmd.exe is a whole different beast from MS-DOS.

– Sathyajith Bhat
Jul 20 '12 at 12:59







cmd.exe is a whole different beast from MS-DOS.

– Sathyajith Bhat
Jul 20 '12 at 12:59






7




7





MS-DOS is an operating system. The Windows command prompt is an interface that looks like MS-DOS.

– Der Hochstapler
Jul 20 '12 at 12:59





MS-DOS is an operating system. The Windows command prompt is an interface that looks like MS-DOS.

– Der Hochstapler
Jul 20 '12 at 12:59













"The Windows command prompt is NOT a DOS prompt!"

– phuclv
Nov 30 '16 at 16:45





"The Windows command prompt is NOT a DOS prompt!"

– phuclv
Nov 30 '16 at 16:45













Many commands will have different syntax in DOS and Windows cmd. Some commands don't exist at all in DOS

– phuclv
Aug 13 '18 at 17:03





Many commands will have different syntax in DOS and Windows cmd. Some commands don't exist at all in DOS

– phuclv
Aug 13 '18 at 17:03










6 Answers
6






active

oldest

votes


















17














This was true once, but it isn't anymore.



From MS-DOS # Windows command-line interface - Wikipedia:




All versions of Microsoft Windows have had an MS-DOS like command-line interface (CLI). This could run many DOS and variously Win32, OS/2 1.x and Posix command line utilities in the same command-line session, allowing piping between commands. The user interface, and the icon up to Windows 2000, followed the native MS-DOS interface.



Consumer Windows (up to 3.11, Win9x, WinME) ran as a Graphical User Interface (GUI) running on top of MS-DOS. With Windows 95, 98, and ME the MS-DOS part was integrated, treating both operating systems as a complete package. The command line accessed the DOS command line (usually command.com), through a Windows module (winoldap.mod).



A new line of Windows, (Windows NT), boot through a kernel whose sole purpose is to load Windows. One can not run Win32 applications in the loader system in the manner that OS/2, UNIX or Consumer Windows can launch character mode sessions.




So no, in every Windows from the NT family (e.g., XP, Vista, 7, 8), the command prompt and MS-DOS are visually similar, but quite different.






share|improve this answer
























  • Actually, I would say it was never true. The equivalent to cmd.exe would have been command.com, a rather small part of MSDOS.

    – user53528
    Jan 5 '18 at 2:27



















8














They are different things - The Command Prompt is Not MS-DOS - but as far as the user is concerned they could be the same thing as they do the same things.



So it depends on your point of view. From a technical point of view your friend it correct, but from a user perspective you are correct (sort of as there are differences that an expert would spot).






share|improve this answer
























  • I think you mean the opposite right? He is the one who is technically correct because they are not literally the same thing, the friend is the one who practically correct because they are the same thing to the user.

    – Brad
    Jul 20 '12 at 17:34











  • @Brad - the way I read the question was that the OP said they were the same but his friend said they weren't.

    – ChrisF
    Jul 20 '12 at 20:36



















7














No.



(Unless your definition of equality does not extend past »It is a text interface and I can run programs from it.«)



What is run when you click Command Prompt in the Start Menu is the Windows Command Processor, a.k.a. cmd.exe. Its built-in commands and scripting syntax (including many quirks) are based on the ancient command.com from CP/M and later MS-DOS, but apart from that they are completely separate things. Also, command.com is a 16-bit program while cmd.exe is a native Windows console application.



Things were different in Windows 95, 98 and ME where command.com would be run in a MS-DOS VM with Windows acting as the hypervisor (yes, they had that sort of thing at the time already). There you had an entire virtual machine running DOS. But on Windows NT, 2000, XP, Vista and 7 – no. DOS only lives on there in ntvdm.exe which is the NT Virtual DOS Machine which is just a thin emulation layer capturing calls that the CPU cannot execute directly (which is why it works faster but worse than DOSBox).



In any case, even command.com was just a shell for DOS. It wasn't the operating system.



Inside, I actually cringe each time I see people referring to a window with gray-on-black text as MS-DOS. In the vast majority of cases they don't actually know what they're referring to.






share|improve this answer































    4














    From what I understand, MS-DOS is the disk operating system that Microsoft released. The command prompt is a non-graphical interface that allows you to interact with your operating system.



    Command Prompt is a command line interpreter application available in most Windows operating systems, officially called the Windows Command Processor but sometimes called the command shell. Command Prompt is a Windows program that emulates many of the command line abilities available in MS-DOS but it is not actually MS-DOS.



    Command Prompt is a GUI version of command.com in MS-DOS. cmd.exe is a native Windows application usually running in a Win32 console. This allows it to take advantage of features available to native programs on the platform that are otherwise unavailable to DOS programs.



    For example, since cmd.exe is a native text-mode application on OS/2, it can use real pipes in command pipelines, allowing both sides of the pipeline to run concurrently. As a result, it is possible to redirect the standard error in cmd.exe, unlike COMMAND.COM. (COMMAND.COM uses temporary files, and runs the two sides serially, one after the other.)



    In reality, cmd.exe is a Windows program that acts as a DOS-like command line interpreter. It is generally compatible, but provides extensions which address some of the limitations of COMMAND.COM (above explanations are referred by Wikipedia).






    share|improve this answer

































      2














      Your friend is right. MS-DOS is/was an Operating System (Microsoft Disk Operating System is what the acronym stands for.) The UI for DOS is called a (the) command prompt.



      The first few versions of Windows ran on top of DOS (making them technically operating environments, though I'm not sure anybody makes that distinction anymore), but later OSes, starting with the NT Kernel, didn't - DOS was gone.



      However, people still needed the functionality provided by the command prompt, and instead of command.com we got command.exe (and these days cmd.exe), which when run gives us a command prompt.



      But, that's not the only (nor anywhere near the first) command prompt that people have used. Command Prompts are also called Shells, and Unix has many, and the commands are different and often very powerful. Speaking of Power, Microsoft has created a new command prompt for Windows called PowerShell which is incredibly powerful and interesting. See Wikipedia for more: http://en.wikipedia.org/wiki/Command-line_interface#Operating_System_Command-Line_Interfaces






      share|improve this answer
























      • > The UI for DOS is called a (the) command prompt. Also “command-line”.

        – Synetech
        Jul 20 '12 at 17:31











      • and CLI or command line interface.

        – Mark Allen
        Jul 20 '12 at 17:41











      • Technically, CLI is a type of interface, not a particular instance of one. It would be like calling a Windows a GUI (e.g., I used the Windows GUI). You can say it, and it is technically true/accurate, but it would just be weird.

        – Synetech
        Jul 20 '12 at 17:44











      • I just call it a command prompt. :)

        – Mark Allen
        Jul 20 '12 at 18:51











      • I just call it DOS (at least I used to, for some time now, I have been reluctantly calling it pure DOS).

        – Synetech
        Jul 20 '12 at 19:02



















      0














      They're not the same




      Apparently lots of people don't realise that the DOS Prompt, and the Windows Command Prompt are not the same thing. They're actually two different programs - COMMAND.COM and CMD.EXE respectively.



      Know Your Command Prompts




      Firstly due to differences in the platform (DOS vs Windows) and interpreter (command.com vs cmd.exe), there will be obvious dissimilarities like




      • DOS runs in fullscreen without a windowed mode, so no mode con:cols=COL lines=ROW command to resize the console, and no title command

      • DOS doesn't support multitasking, multiuser, registry, permissions, long file names, symlinks/hardlinks, network, Unicode, dynamic disks and advanced volumes support... so no tools to manage those


      But there are also major differences in the capabilities and syntax of internal commands between command.com and cmd.exe, as well as some external tools in the two environments. In MS-DOS there are





      • No functions, code blocks () and local scopes which mean





        • for, if... must be followed by a single command on the same line

        • no exit /b or goto :eof

        • no setlocal and endlocal


        • goto can only jump to a label, call can only start another batch file


        • commands can't be grouped together like



          (
          command1
          command2
          ) >output.txt




      • No escape character ^. Printing special characters would be a pain, and no possibility of running multiline commands


      • No special formats of if


        • no if cmdextversion and if defined

        • no numeric and case-insensitive string comparison if [/i] string1 compare-op string2



      • No command history and command argument completion

      • No indirect expansion (e.g. call set %%var%suffix%=string) of variables and no delayed expansion (e.g. echo !var%suffix%!)

      • No advanced string manipulation


        • no ~xxxV variable support

        • no substring %variable:~num1,num2% or string replacement support %variable:str=newstr%



      • No partial variable name matching for set, and


        • no set /a so you can't do arithmetic

        • no set /p which means reading user input is a pain

        • no set "var=value" syntax



      • No for /d, for /r or for /l. No for /f so reading input from files is also difficult. The only form of for in DOS is FOR %variable IN (set) DO command [command-parameters]

      • No findstr, and find doesn't support Unicode

      • No special environment variables like %CD% %DATE% %TIME% %RANDOM% %ERRORLEVEL% %CMDEXTVERSION% %CMDCMDLINE% %HIGHESTNUMANODENUMBER%

      • Limited directory changing ability


        • No pushd/popd

        • No cd /d. Also no cd path with spaces and cd "path with spaces" due to the lack of long file name support



      • No color

      • No forfiles

      • No assoc (because there are no GUI and files must be opened manually from command line, so no file association is needed)


      A lot of useful external commands in Windows like where, sort, more (in some DOS versions), choice... are also missing in DOS





      And this is what MS' Rich Turner said




      Also, Cmd != MS-DOS!



      I also want to point out a common misconception perpetuated by articles like the ones above: Cmd <> MS-DOS!



      In FACT:




      • Microsoft last shipped a "new" version of MS-DOS (v8.0 in Windows ME), on September 16th, 2000 - 16 years ago (as of this writing)!!

      • MS-DOS was an operating system (albeit a relatively simple OS by today's standards) whose primary user-interface was a command-line shell, until Windows 3.x & 9.x arrived and ran on/around MS-DOS

      • MS-DOS' command-line shell's scripting language was relatively terse and moderately powerful, but lacked many of the richer, and more advanced features we enjoy in modern-day PowerShell, Bash, etc.

      • While later versions of MS-DOS grew in sophistication and added/replaced some older assembly with new code written in 'C', much of MS-DOS remained written in x86 assembly for efficiency, and because it was the only way at the time to gain access to many hardware devices and peripherals. This made MS-DOS non-portable to non-x86 CPU's. If you're so inclined, you can actually download the source code for MS-DOS v1.1 and v2.0 to see just how much of the earlier versions of MS-DOS were written in x86 assembly (hint: pretty much all of it)!


      https://blogs.msdn.microsoft.com/commandline/2017/01/04/rumors-of-cmds-death-have-been-greatly-exaggerated/






      Further reading




      • Limitations of MS-DOS 6.22

      • Commands and Their Availability From MS-DOS 6.22 through Windows 8

      • New (and Removed) Commands in Windows 8

      • How do modern .bat files differ from old MS DOS .bat files?

      • Windows batch files: .bat vs .cmd?

      • cmd.exe: comparison with MS-DOS Prompt


      In conclusion, functionality-wise they may be a little bit similar, but otherwise hugely different






      share|improve this answer























        Your Answer








        StackExchange.ready(function() {
        var channelOptions = {
        tags: "".split(" "),
        id: "3"
        };
        initTagRenderer("".split(" "), "".split(" "), channelOptions);

        StackExchange.using("externalEditor", function() {
        // Have to fire editor after snippets, if snippets enabled
        if (StackExchange.settings.snippets.snippetsEnabled) {
        StackExchange.using("snippets", function() {
        createEditor();
        });
        }
        else {
        createEditor();
        }
        });

        function createEditor() {
        StackExchange.prepareEditor({
        heartbeatType: 'answer',
        autoActivateHeartbeat: false,
        convertImagesToLinks: true,
        noModals: true,
        showLowRepImageUploadWarning: true,
        reputationToPostImages: 10,
        bindNavPrevention: true,
        postfix: "",
        imageUploader: {
        brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
        contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
        allowUrls: true
        },
        onDemand: true,
        discardSelector: ".discard-answer"
        ,immediatelyShowMarkdownHelp:true
        });


        }
        });














        draft saved

        draft discarded


















        StackExchange.ready(
        function () {
        StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f451432%2fare-the-command-prompt-and-ms-dos-the-same-thing%23new-answer', 'question_page');
        }
        );

        Post as a guest















        Required, but never shown

























        6 Answers
        6






        active

        oldest

        votes








        6 Answers
        6






        active

        oldest

        votes









        active

        oldest

        votes






        active

        oldest

        votes









        17














        This was true once, but it isn't anymore.



        From MS-DOS # Windows command-line interface - Wikipedia:




        All versions of Microsoft Windows have had an MS-DOS like command-line interface (CLI). This could run many DOS and variously Win32, OS/2 1.x and Posix command line utilities in the same command-line session, allowing piping between commands. The user interface, and the icon up to Windows 2000, followed the native MS-DOS interface.



        Consumer Windows (up to 3.11, Win9x, WinME) ran as a Graphical User Interface (GUI) running on top of MS-DOS. With Windows 95, 98, and ME the MS-DOS part was integrated, treating both operating systems as a complete package. The command line accessed the DOS command line (usually command.com), through a Windows module (winoldap.mod).



        A new line of Windows, (Windows NT), boot through a kernel whose sole purpose is to load Windows. One can not run Win32 applications in the loader system in the manner that OS/2, UNIX or Consumer Windows can launch character mode sessions.




        So no, in every Windows from the NT family (e.g., XP, Vista, 7, 8), the command prompt and MS-DOS are visually similar, but quite different.






        share|improve this answer
























        • Actually, I would say it was never true. The equivalent to cmd.exe would have been command.com, a rather small part of MSDOS.

          – user53528
          Jan 5 '18 at 2:27
















        17














        This was true once, but it isn't anymore.



        From MS-DOS # Windows command-line interface - Wikipedia:




        All versions of Microsoft Windows have had an MS-DOS like command-line interface (CLI). This could run many DOS and variously Win32, OS/2 1.x and Posix command line utilities in the same command-line session, allowing piping between commands. The user interface, and the icon up to Windows 2000, followed the native MS-DOS interface.



        Consumer Windows (up to 3.11, Win9x, WinME) ran as a Graphical User Interface (GUI) running on top of MS-DOS. With Windows 95, 98, and ME the MS-DOS part was integrated, treating both operating systems as a complete package. The command line accessed the DOS command line (usually command.com), through a Windows module (winoldap.mod).



        A new line of Windows, (Windows NT), boot through a kernel whose sole purpose is to load Windows. One can not run Win32 applications in the loader system in the manner that OS/2, UNIX or Consumer Windows can launch character mode sessions.




        So no, in every Windows from the NT family (e.g., XP, Vista, 7, 8), the command prompt and MS-DOS are visually similar, but quite different.






        share|improve this answer
























        • Actually, I would say it was never true. The equivalent to cmd.exe would have been command.com, a rather small part of MSDOS.

          – user53528
          Jan 5 '18 at 2:27














        17












        17








        17







        This was true once, but it isn't anymore.



        From MS-DOS # Windows command-line interface - Wikipedia:




        All versions of Microsoft Windows have had an MS-DOS like command-line interface (CLI). This could run many DOS and variously Win32, OS/2 1.x and Posix command line utilities in the same command-line session, allowing piping between commands. The user interface, and the icon up to Windows 2000, followed the native MS-DOS interface.



        Consumer Windows (up to 3.11, Win9x, WinME) ran as a Graphical User Interface (GUI) running on top of MS-DOS. With Windows 95, 98, and ME the MS-DOS part was integrated, treating both operating systems as a complete package. The command line accessed the DOS command line (usually command.com), through a Windows module (winoldap.mod).



        A new line of Windows, (Windows NT), boot through a kernel whose sole purpose is to load Windows. One can not run Win32 applications in the loader system in the manner that OS/2, UNIX or Consumer Windows can launch character mode sessions.




        So no, in every Windows from the NT family (e.g., XP, Vista, 7, 8), the command prompt and MS-DOS are visually similar, but quite different.






        share|improve this answer













        This was true once, but it isn't anymore.



        From MS-DOS # Windows command-line interface - Wikipedia:




        All versions of Microsoft Windows have had an MS-DOS like command-line interface (CLI). This could run many DOS and variously Win32, OS/2 1.x and Posix command line utilities in the same command-line session, allowing piping between commands. The user interface, and the icon up to Windows 2000, followed the native MS-DOS interface.



        Consumer Windows (up to 3.11, Win9x, WinME) ran as a Graphical User Interface (GUI) running on top of MS-DOS. With Windows 95, 98, and ME the MS-DOS part was integrated, treating both operating systems as a complete package. The command line accessed the DOS command line (usually command.com), through a Windows module (winoldap.mod).



        A new line of Windows, (Windows NT), boot through a kernel whose sole purpose is to load Windows. One can not run Win32 applications in the loader system in the manner that OS/2, UNIX or Consumer Windows can launch character mode sessions.




        So no, in every Windows from the NT family (e.g., XP, Vista, 7, 8), the command prompt and MS-DOS are visually similar, but quite different.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Jul 20 '12 at 13:09









        DennisDennis

        40.9k7102136




        40.9k7102136













        • Actually, I would say it was never true. The equivalent to cmd.exe would have been command.com, a rather small part of MSDOS.

          – user53528
          Jan 5 '18 at 2:27



















        • Actually, I would say it was never true. The equivalent to cmd.exe would have been command.com, a rather small part of MSDOS.

          – user53528
          Jan 5 '18 at 2:27

















        Actually, I would say it was never true. The equivalent to cmd.exe would have been command.com, a rather small part of MSDOS.

        – user53528
        Jan 5 '18 at 2:27





        Actually, I would say it was never true. The equivalent to cmd.exe would have been command.com, a rather small part of MSDOS.

        – user53528
        Jan 5 '18 at 2:27













        8














        They are different things - The Command Prompt is Not MS-DOS - but as far as the user is concerned they could be the same thing as they do the same things.



        So it depends on your point of view. From a technical point of view your friend it correct, but from a user perspective you are correct (sort of as there are differences that an expert would spot).






        share|improve this answer
























        • I think you mean the opposite right? He is the one who is technically correct because they are not literally the same thing, the friend is the one who practically correct because they are the same thing to the user.

          – Brad
          Jul 20 '12 at 17:34











        • @Brad - the way I read the question was that the OP said they were the same but his friend said they weren't.

          – ChrisF
          Jul 20 '12 at 20:36
















        8














        They are different things - The Command Prompt is Not MS-DOS - but as far as the user is concerned they could be the same thing as they do the same things.



        So it depends on your point of view. From a technical point of view your friend it correct, but from a user perspective you are correct (sort of as there are differences that an expert would spot).






        share|improve this answer
























        • I think you mean the opposite right? He is the one who is technically correct because they are not literally the same thing, the friend is the one who practically correct because they are the same thing to the user.

          – Brad
          Jul 20 '12 at 17:34











        • @Brad - the way I read the question was that the OP said they were the same but his friend said they weren't.

          – ChrisF
          Jul 20 '12 at 20:36














        8












        8








        8







        They are different things - The Command Prompt is Not MS-DOS - but as far as the user is concerned they could be the same thing as they do the same things.



        So it depends on your point of view. From a technical point of view your friend it correct, but from a user perspective you are correct (sort of as there are differences that an expert would spot).






        share|improve this answer













        They are different things - The Command Prompt is Not MS-DOS - but as far as the user is concerned they could be the same thing as they do the same things.



        So it depends on your point of view. From a technical point of view your friend it correct, but from a user perspective you are correct (sort of as there are differences that an expert would spot).







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Jul 20 '12 at 12:59









        ChrisFChrisF

        38.4k1388139




        38.4k1388139













        • I think you mean the opposite right? He is the one who is technically correct because they are not literally the same thing, the friend is the one who practically correct because they are the same thing to the user.

          – Brad
          Jul 20 '12 at 17:34











        • @Brad - the way I read the question was that the OP said they were the same but his friend said they weren't.

          – ChrisF
          Jul 20 '12 at 20:36



















        • I think you mean the opposite right? He is the one who is technically correct because they are not literally the same thing, the friend is the one who practically correct because they are the same thing to the user.

          – Brad
          Jul 20 '12 at 17:34











        • @Brad - the way I read the question was that the OP said they were the same but his friend said they weren't.

          – ChrisF
          Jul 20 '12 at 20:36

















        I think you mean the opposite right? He is the one who is technically correct because they are not literally the same thing, the friend is the one who practically correct because they are the same thing to the user.

        – Brad
        Jul 20 '12 at 17:34





        I think you mean the opposite right? He is the one who is technically correct because they are not literally the same thing, the friend is the one who practically correct because they are the same thing to the user.

        – Brad
        Jul 20 '12 at 17:34













        @Brad - the way I read the question was that the OP said they were the same but his friend said they weren't.

        – ChrisF
        Jul 20 '12 at 20:36





        @Brad - the way I read the question was that the OP said they were the same but his friend said they weren't.

        – ChrisF
        Jul 20 '12 at 20:36











        7














        No.



        (Unless your definition of equality does not extend past »It is a text interface and I can run programs from it.«)



        What is run when you click Command Prompt in the Start Menu is the Windows Command Processor, a.k.a. cmd.exe. Its built-in commands and scripting syntax (including many quirks) are based on the ancient command.com from CP/M and later MS-DOS, but apart from that they are completely separate things. Also, command.com is a 16-bit program while cmd.exe is a native Windows console application.



        Things were different in Windows 95, 98 and ME where command.com would be run in a MS-DOS VM with Windows acting as the hypervisor (yes, they had that sort of thing at the time already). There you had an entire virtual machine running DOS. But on Windows NT, 2000, XP, Vista and 7 – no. DOS only lives on there in ntvdm.exe which is the NT Virtual DOS Machine which is just a thin emulation layer capturing calls that the CPU cannot execute directly (which is why it works faster but worse than DOSBox).



        In any case, even command.com was just a shell for DOS. It wasn't the operating system.



        Inside, I actually cringe each time I see people referring to a window with gray-on-black text as MS-DOS. In the vast majority of cases they don't actually know what they're referring to.






        share|improve this answer




























          7














          No.



          (Unless your definition of equality does not extend past »It is a text interface and I can run programs from it.«)



          What is run when you click Command Prompt in the Start Menu is the Windows Command Processor, a.k.a. cmd.exe. Its built-in commands and scripting syntax (including many quirks) are based on the ancient command.com from CP/M and later MS-DOS, but apart from that they are completely separate things. Also, command.com is a 16-bit program while cmd.exe is a native Windows console application.



          Things were different in Windows 95, 98 and ME where command.com would be run in a MS-DOS VM with Windows acting as the hypervisor (yes, they had that sort of thing at the time already). There you had an entire virtual machine running DOS. But on Windows NT, 2000, XP, Vista and 7 – no. DOS only lives on there in ntvdm.exe which is the NT Virtual DOS Machine which is just a thin emulation layer capturing calls that the CPU cannot execute directly (which is why it works faster but worse than DOSBox).



          In any case, even command.com was just a shell for DOS. It wasn't the operating system.



          Inside, I actually cringe each time I see people referring to a window with gray-on-black text as MS-DOS. In the vast majority of cases they don't actually know what they're referring to.






          share|improve this answer


























            7












            7








            7







            No.



            (Unless your definition of equality does not extend past »It is a text interface and I can run programs from it.«)



            What is run when you click Command Prompt in the Start Menu is the Windows Command Processor, a.k.a. cmd.exe. Its built-in commands and scripting syntax (including many quirks) are based on the ancient command.com from CP/M and later MS-DOS, but apart from that they are completely separate things. Also, command.com is a 16-bit program while cmd.exe is a native Windows console application.



            Things were different in Windows 95, 98 and ME where command.com would be run in a MS-DOS VM with Windows acting as the hypervisor (yes, they had that sort of thing at the time already). There you had an entire virtual machine running DOS. But on Windows NT, 2000, XP, Vista and 7 – no. DOS only lives on there in ntvdm.exe which is the NT Virtual DOS Machine which is just a thin emulation layer capturing calls that the CPU cannot execute directly (which is why it works faster but worse than DOSBox).



            In any case, even command.com was just a shell for DOS. It wasn't the operating system.



            Inside, I actually cringe each time I see people referring to a window with gray-on-black text as MS-DOS. In the vast majority of cases they don't actually know what they're referring to.






            share|improve this answer













            No.



            (Unless your definition of equality does not extend past »It is a text interface and I can run programs from it.«)



            What is run when you click Command Prompt in the Start Menu is the Windows Command Processor, a.k.a. cmd.exe. Its built-in commands and scripting syntax (including many quirks) are based on the ancient command.com from CP/M and later MS-DOS, but apart from that they are completely separate things. Also, command.com is a 16-bit program while cmd.exe is a native Windows console application.



            Things were different in Windows 95, 98 and ME where command.com would be run in a MS-DOS VM with Windows acting as the hypervisor (yes, they had that sort of thing at the time already). There you had an entire virtual machine running DOS. But on Windows NT, 2000, XP, Vista and 7 – no. DOS only lives on there in ntvdm.exe which is the NT Virtual DOS Machine which is just a thin emulation layer capturing calls that the CPU cannot execute directly (which is why it works faster but worse than DOSBox).



            In any case, even command.com was just a shell for DOS. It wasn't the operating system.



            Inside, I actually cringe each time I see people referring to a window with gray-on-black text as MS-DOS. In the vast majority of cases they don't actually know what they're referring to.







            share|improve this answer












            share|improve this answer



            share|improve this answer










            answered Jul 20 '12 at 17:44









            JoeyJoey

            33.3k987118




            33.3k987118























                4














                From what I understand, MS-DOS is the disk operating system that Microsoft released. The command prompt is a non-graphical interface that allows you to interact with your operating system.



                Command Prompt is a command line interpreter application available in most Windows operating systems, officially called the Windows Command Processor but sometimes called the command shell. Command Prompt is a Windows program that emulates many of the command line abilities available in MS-DOS but it is not actually MS-DOS.



                Command Prompt is a GUI version of command.com in MS-DOS. cmd.exe is a native Windows application usually running in a Win32 console. This allows it to take advantage of features available to native programs on the platform that are otherwise unavailable to DOS programs.



                For example, since cmd.exe is a native text-mode application on OS/2, it can use real pipes in command pipelines, allowing both sides of the pipeline to run concurrently. As a result, it is possible to redirect the standard error in cmd.exe, unlike COMMAND.COM. (COMMAND.COM uses temporary files, and runs the two sides serially, one after the other.)



                In reality, cmd.exe is a Windows program that acts as a DOS-like command line interpreter. It is generally compatible, but provides extensions which address some of the limitations of COMMAND.COM (above explanations are referred by Wikipedia).






                share|improve this answer






























                  4














                  From what I understand, MS-DOS is the disk operating system that Microsoft released. The command prompt is a non-graphical interface that allows you to interact with your operating system.



                  Command Prompt is a command line interpreter application available in most Windows operating systems, officially called the Windows Command Processor but sometimes called the command shell. Command Prompt is a Windows program that emulates many of the command line abilities available in MS-DOS but it is not actually MS-DOS.



                  Command Prompt is a GUI version of command.com in MS-DOS. cmd.exe is a native Windows application usually running in a Win32 console. This allows it to take advantage of features available to native programs on the platform that are otherwise unavailable to DOS programs.



                  For example, since cmd.exe is a native text-mode application on OS/2, it can use real pipes in command pipelines, allowing both sides of the pipeline to run concurrently. As a result, it is possible to redirect the standard error in cmd.exe, unlike COMMAND.COM. (COMMAND.COM uses temporary files, and runs the two sides serially, one after the other.)



                  In reality, cmd.exe is a Windows program that acts as a DOS-like command line interpreter. It is generally compatible, but provides extensions which address some of the limitations of COMMAND.COM (above explanations are referred by Wikipedia).






                  share|improve this answer




























                    4












                    4








                    4







                    From what I understand, MS-DOS is the disk operating system that Microsoft released. The command prompt is a non-graphical interface that allows you to interact with your operating system.



                    Command Prompt is a command line interpreter application available in most Windows operating systems, officially called the Windows Command Processor but sometimes called the command shell. Command Prompt is a Windows program that emulates many of the command line abilities available in MS-DOS but it is not actually MS-DOS.



                    Command Prompt is a GUI version of command.com in MS-DOS. cmd.exe is a native Windows application usually running in a Win32 console. This allows it to take advantage of features available to native programs on the platform that are otherwise unavailable to DOS programs.



                    For example, since cmd.exe is a native text-mode application on OS/2, it can use real pipes in command pipelines, allowing both sides of the pipeline to run concurrently. As a result, it is possible to redirect the standard error in cmd.exe, unlike COMMAND.COM. (COMMAND.COM uses temporary files, and runs the two sides serially, one after the other.)



                    In reality, cmd.exe is a Windows program that acts as a DOS-like command line interpreter. It is generally compatible, but provides extensions which address some of the limitations of COMMAND.COM (above explanations are referred by Wikipedia).






                    share|improve this answer















                    From what I understand, MS-DOS is the disk operating system that Microsoft released. The command prompt is a non-graphical interface that allows you to interact with your operating system.



                    Command Prompt is a command line interpreter application available in most Windows operating systems, officially called the Windows Command Processor but sometimes called the command shell. Command Prompt is a Windows program that emulates many of the command line abilities available in MS-DOS but it is not actually MS-DOS.



                    Command Prompt is a GUI version of command.com in MS-DOS. cmd.exe is a native Windows application usually running in a Win32 console. This allows it to take advantage of features available to native programs on the platform that are otherwise unavailable to DOS programs.



                    For example, since cmd.exe is a native text-mode application on OS/2, it can use real pipes in command pipelines, allowing both sides of the pipeline to run concurrently. As a result, it is possible to redirect the standard error in cmd.exe, unlike COMMAND.COM. (COMMAND.COM uses temporary files, and runs the two sides serially, one after the other.)



                    In reality, cmd.exe is a Windows program that acts as a DOS-like command line interpreter. It is generally compatible, but provides extensions which address some of the limitations of COMMAND.COM (above explanations are referred by Wikipedia).







                    share|improve this answer














                    share|improve this answer



                    share|improve this answer








                    edited Jul 20 '12 at 14:07









                    3498DB

                    15.8k114762




                    15.8k114762










                    answered Jul 20 '12 at 13:15









                    Thu Yein TunThu Yein Tun

                    4141313




                    4141313























                        2














                        Your friend is right. MS-DOS is/was an Operating System (Microsoft Disk Operating System is what the acronym stands for.) The UI for DOS is called a (the) command prompt.



                        The first few versions of Windows ran on top of DOS (making them technically operating environments, though I'm not sure anybody makes that distinction anymore), but later OSes, starting with the NT Kernel, didn't - DOS was gone.



                        However, people still needed the functionality provided by the command prompt, and instead of command.com we got command.exe (and these days cmd.exe), which when run gives us a command prompt.



                        But, that's not the only (nor anywhere near the first) command prompt that people have used. Command Prompts are also called Shells, and Unix has many, and the commands are different and often very powerful. Speaking of Power, Microsoft has created a new command prompt for Windows called PowerShell which is incredibly powerful and interesting. See Wikipedia for more: http://en.wikipedia.org/wiki/Command-line_interface#Operating_System_Command-Line_Interfaces






                        share|improve this answer
























                        • > The UI for DOS is called a (the) command prompt. Also “command-line”.

                          – Synetech
                          Jul 20 '12 at 17:31











                        • and CLI or command line interface.

                          – Mark Allen
                          Jul 20 '12 at 17:41











                        • Technically, CLI is a type of interface, not a particular instance of one. It would be like calling a Windows a GUI (e.g., I used the Windows GUI). You can say it, and it is technically true/accurate, but it would just be weird.

                          – Synetech
                          Jul 20 '12 at 17:44











                        • I just call it a command prompt. :)

                          – Mark Allen
                          Jul 20 '12 at 18:51











                        • I just call it DOS (at least I used to, for some time now, I have been reluctantly calling it pure DOS).

                          – Synetech
                          Jul 20 '12 at 19:02
















                        2














                        Your friend is right. MS-DOS is/was an Operating System (Microsoft Disk Operating System is what the acronym stands for.) The UI for DOS is called a (the) command prompt.



                        The first few versions of Windows ran on top of DOS (making them technically operating environments, though I'm not sure anybody makes that distinction anymore), but later OSes, starting with the NT Kernel, didn't - DOS was gone.



                        However, people still needed the functionality provided by the command prompt, and instead of command.com we got command.exe (and these days cmd.exe), which when run gives us a command prompt.



                        But, that's not the only (nor anywhere near the first) command prompt that people have used. Command Prompts are also called Shells, and Unix has many, and the commands are different and often very powerful. Speaking of Power, Microsoft has created a new command prompt for Windows called PowerShell which is incredibly powerful and interesting. See Wikipedia for more: http://en.wikipedia.org/wiki/Command-line_interface#Operating_System_Command-Line_Interfaces






                        share|improve this answer
























                        • > The UI for DOS is called a (the) command prompt. Also “command-line”.

                          – Synetech
                          Jul 20 '12 at 17:31











                        • and CLI or command line interface.

                          – Mark Allen
                          Jul 20 '12 at 17:41











                        • Technically, CLI is a type of interface, not a particular instance of one. It would be like calling a Windows a GUI (e.g., I used the Windows GUI). You can say it, and it is technically true/accurate, but it would just be weird.

                          – Synetech
                          Jul 20 '12 at 17:44











                        • I just call it a command prompt. :)

                          – Mark Allen
                          Jul 20 '12 at 18:51











                        • I just call it DOS (at least I used to, for some time now, I have been reluctantly calling it pure DOS).

                          – Synetech
                          Jul 20 '12 at 19:02














                        2












                        2








                        2







                        Your friend is right. MS-DOS is/was an Operating System (Microsoft Disk Operating System is what the acronym stands for.) The UI for DOS is called a (the) command prompt.



                        The first few versions of Windows ran on top of DOS (making them technically operating environments, though I'm not sure anybody makes that distinction anymore), but later OSes, starting with the NT Kernel, didn't - DOS was gone.



                        However, people still needed the functionality provided by the command prompt, and instead of command.com we got command.exe (and these days cmd.exe), which when run gives us a command prompt.



                        But, that's not the only (nor anywhere near the first) command prompt that people have used. Command Prompts are also called Shells, and Unix has many, and the commands are different and often very powerful. Speaking of Power, Microsoft has created a new command prompt for Windows called PowerShell which is incredibly powerful and interesting. See Wikipedia for more: http://en.wikipedia.org/wiki/Command-line_interface#Operating_System_Command-Line_Interfaces






                        share|improve this answer













                        Your friend is right. MS-DOS is/was an Operating System (Microsoft Disk Operating System is what the acronym stands for.) The UI for DOS is called a (the) command prompt.



                        The first few versions of Windows ran on top of DOS (making them technically operating environments, though I'm not sure anybody makes that distinction anymore), but later OSes, starting with the NT Kernel, didn't - DOS was gone.



                        However, people still needed the functionality provided by the command prompt, and instead of command.com we got command.exe (and these days cmd.exe), which when run gives us a command prompt.



                        But, that's not the only (nor anywhere near the first) command prompt that people have used. Command Prompts are also called Shells, and Unix has many, and the commands are different and often very powerful. Speaking of Power, Microsoft has created a new command prompt for Windows called PowerShell which is incredibly powerful and interesting. See Wikipedia for more: http://en.wikipedia.org/wiki/Command-line_interface#Operating_System_Command-Line_Interfaces







                        share|improve this answer












                        share|improve this answer



                        share|improve this answer










                        answered Jul 20 '12 at 17:28









                        Mark AllenMark Allen

                        2,48111721




                        2,48111721













                        • > The UI for DOS is called a (the) command prompt. Also “command-line”.

                          – Synetech
                          Jul 20 '12 at 17:31











                        • and CLI or command line interface.

                          – Mark Allen
                          Jul 20 '12 at 17:41











                        • Technically, CLI is a type of interface, not a particular instance of one. It would be like calling a Windows a GUI (e.g., I used the Windows GUI). You can say it, and it is technically true/accurate, but it would just be weird.

                          – Synetech
                          Jul 20 '12 at 17:44











                        • I just call it a command prompt. :)

                          – Mark Allen
                          Jul 20 '12 at 18:51











                        • I just call it DOS (at least I used to, for some time now, I have been reluctantly calling it pure DOS).

                          – Synetech
                          Jul 20 '12 at 19:02



















                        • > The UI for DOS is called a (the) command prompt. Also “command-line”.

                          – Synetech
                          Jul 20 '12 at 17:31











                        • and CLI or command line interface.

                          – Mark Allen
                          Jul 20 '12 at 17:41











                        • Technically, CLI is a type of interface, not a particular instance of one. It would be like calling a Windows a GUI (e.g., I used the Windows GUI). You can say it, and it is technically true/accurate, but it would just be weird.

                          – Synetech
                          Jul 20 '12 at 17:44











                        • I just call it a command prompt. :)

                          – Mark Allen
                          Jul 20 '12 at 18:51











                        • I just call it DOS (at least I used to, for some time now, I have been reluctantly calling it pure DOS).

                          – Synetech
                          Jul 20 '12 at 19:02

















                        > The UI for DOS is called a (the) command prompt. Also “command-line”.

                        – Synetech
                        Jul 20 '12 at 17:31





                        > The UI for DOS is called a (the) command prompt. Also “command-line”.

                        – Synetech
                        Jul 20 '12 at 17:31













                        and CLI or command line interface.

                        – Mark Allen
                        Jul 20 '12 at 17:41





                        and CLI or command line interface.

                        – Mark Allen
                        Jul 20 '12 at 17:41













                        Technically, CLI is a type of interface, not a particular instance of one. It would be like calling a Windows a GUI (e.g., I used the Windows GUI). You can say it, and it is technically true/accurate, but it would just be weird.

                        – Synetech
                        Jul 20 '12 at 17:44





                        Technically, CLI is a type of interface, not a particular instance of one. It would be like calling a Windows a GUI (e.g., I used the Windows GUI). You can say it, and it is technically true/accurate, but it would just be weird.

                        – Synetech
                        Jul 20 '12 at 17:44













                        I just call it a command prompt. :)

                        – Mark Allen
                        Jul 20 '12 at 18:51





                        I just call it a command prompt. :)

                        – Mark Allen
                        Jul 20 '12 at 18:51













                        I just call it DOS (at least I used to, for some time now, I have been reluctantly calling it pure DOS).

                        – Synetech
                        Jul 20 '12 at 19:02





                        I just call it DOS (at least I used to, for some time now, I have been reluctantly calling it pure DOS).

                        – Synetech
                        Jul 20 '12 at 19:02











                        0














                        They're not the same




                        Apparently lots of people don't realise that the DOS Prompt, and the Windows Command Prompt are not the same thing. They're actually two different programs - COMMAND.COM and CMD.EXE respectively.



                        Know Your Command Prompts




                        Firstly due to differences in the platform (DOS vs Windows) and interpreter (command.com vs cmd.exe), there will be obvious dissimilarities like




                        • DOS runs in fullscreen without a windowed mode, so no mode con:cols=COL lines=ROW command to resize the console, and no title command

                        • DOS doesn't support multitasking, multiuser, registry, permissions, long file names, symlinks/hardlinks, network, Unicode, dynamic disks and advanced volumes support... so no tools to manage those


                        But there are also major differences in the capabilities and syntax of internal commands between command.com and cmd.exe, as well as some external tools in the two environments. In MS-DOS there are





                        • No functions, code blocks () and local scopes which mean





                          • for, if... must be followed by a single command on the same line

                          • no exit /b or goto :eof

                          • no setlocal and endlocal


                          • goto can only jump to a label, call can only start another batch file


                          • commands can't be grouped together like



                            (
                            command1
                            command2
                            ) >output.txt




                        • No escape character ^. Printing special characters would be a pain, and no possibility of running multiline commands


                        • No special formats of if


                          • no if cmdextversion and if defined

                          • no numeric and case-insensitive string comparison if [/i] string1 compare-op string2



                        • No command history and command argument completion

                        • No indirect expansion (e.g. call set %%var%suffix%=string) of variables and no delayed expansion (e.g. echo !var%suffix%!)

                        • No advanced string manipulation


                          • no ~xxxV variable support

                          • no substring %variable:~num1,num2% or string replacement support %variable:str=newstr%



                        • No partial variable name matching for set, and


                          • no set /a so you can't do arithmetic

                          • no set /p which means reading user input is a pain

                          • no set "var=value" syntax



                        • No for /d, for /r or for /l. No for /f so reading input from files is also difficult. The only form of for in DOS is FOR %variable IN (set) DO command [command-parameters]

                        • No findstr, and find doesn't support Unicode

                        • No special environment variables like %CD% %DATE% %TIME% %RANDOM% %ERRORLEVEL% %CMDEXTVERSION% %CMDCMDLINE% %HIGHESTNUMANODENUMBER%

                        • Limited directory changing ability


                          • No pushd/popd

                          • No cd /d. Also no cd path with spaces and cd "path with spaces" due to the lack of long file name support



                        • No color

                        • No forfiles

                        • No assoc (because there are no GUI and files must be opened manually from command line, so no file association is needed)


                        A lot of useful external commands in Windows like where, sort, more (in some DOS versions), choice... are also missing in DOS





                        And this is what MS' Rich Turner said




                        Also, Cmd != MS-DOS!



                        I also want to point out a common misconception perpetuated by articles like the ones above: Cmd <> MS-DOS!



                        In FACT:




                        • Microsoft last shipped a "new" version of MS-DOS (v8.0 in Windows ME), on September 16th, 2000 - 16 years ago (as of this writing)!!

                        • MS-DOS was an operating system (albeit a relatively simple OS by today's standards) whose primary user-interface was a command-line shell, until Windows 3.x & 9.x arrived and ran on/around MS-DOS

                        • MS-DOS' command-line shell's scripting language was relatively terse and moderately powerful, but lacked many of the richer, and more advanced features we enjoy in modern-day PowerShell, Bash, etc.

                        • While later versions of MS-DOS grew in sophistication and added/replaced some older assembly with new code written in 'C', much of MS-DOS remained written in x86 assembly for efficiency, and because it was the only way at the time to gain access to many hardware devices and peripherals. This made MS-DOS non-portable to non-x86 CPU's. If you're so inclined, you can actually download the source code for MS-DOS v1.1 and v2.0 to see just how much of the earlier versions of MS-DOS were written in x86 assembly (hint: pretty much all of it)!


                        https://blogs.msdn.microsoft.com/commandline/2017/01/04/rumors-of-cmds-death-have-been-greatly-exaggerated/






                        Further reading




                        • Limitations of MS-DOS 6.22

                        • Commands and Their Availability From MS-DOS 6.22 through Windows 8

                        • New (and Removed) Commands in Windows 8

                        • How do modern .bat files differ from old MS DOS .bat files?

                        • Windows batch files: .bat vs .cmd?

                        • cmd.exe: comparison with MS-DOS Prompt


                        In conclusion, functionality-wise they may be a little bit similar, but otherwise hugely different






                        share|improve this answer




























                          0














                          They're not the same




                          Apparently lots of people don't realise that the DOS Prompt, and the Windows Command Prompt are not the same thing. They're actually two different programs - COMMAND.COM and CMD.EXE respectively.



                          Know Your Command Prompts




                          Firstly due to differences in the platform (DOS vs Windows) and interpreter (command.com vs cmd.exe), there will be obvious dissimilarities like




                          • DOS runs in fullscreen without a windowed mode, so no mode con:cols=COL lines=ROW command to resize the console, and no title command

                          • DOS doesn't support multitasking, multiuser, registry, permissions, long file names, symlinks/hardlinks, network, Unicode, dynamic disks and advanced volumes support... so no tools to manage those


                          But there are also major differences in the capabilities and syntax of internal commands between command.com and cmd.exe, as well as some external tools in the two environments. In MS-DOS there are





                          • No functions, code blocks () and local scopes which mean





                            • for, if... must be followed by a single command on the same line

                            • no exit /b or goto :eof

                            • no setlocal and endlocal


                            • goto can only jump to a label, call can only start another batch file


                            • commands can't be grouped together like



                              (
                              command1
                              command2
                              ) >output.txt




                          • No escape character ^. Printing special characters would be a pain, and no possibility of running multiline commands


                          • No special formats of if


                            • no if cmdextversion and if defined

                            • no numeric and case-insensitive string comparison if [/i] string1 compare-op string2



                          • No command history and command argument completion

                          • No indirect expansion (e.g. call set %%var%suffix%=string) of variables and no delayed expansion (e.g. echo !var%suffix%!)

                          • No advanced string manipulation


                            • no ~xxxV variable support

                            • no substring %variable:~num1,num2% or string replacement support %variable:str=newstr%



                          • No partial variable name matching for set, and


                            • no set /a so you can't do arithmetic

                            • no set /p which means reading user input is a pain

                            • no set "var=value" syntax



                          • No for /d, for /r or for /l. No for /f so reading input from files is also difficult. The only form of for in DOS is FOR %variable IN (set) DO command [command-parameters]

                          • No findstr, and find doesn't support Unicode

                          • No special environment variables like %CD% %DATE% %TIME% %RANDOM% %ERRORLEVEL% %CMDEXTVERSION% %CMDCMDLINE% %HIGHESTNUMANODENUMBER%

                          • Limited directory changing ability


                            • No pushd/popd

                            • No cd /d. Also no cd path with spaces and cd "path with spaces" due to the lack of long file name support



                          • No color

                          • No forfiles

                          • No assoc (because there are no GUI and files must be opened manually from command line, so no file association is needed)


                          A lot of useful external commands in Windows like where, sort, more (in some DOS versions), choice... are also missing in DOS





                          And this is what MS' Rich Turner said




                          Also, Cmd != MS-DOS!



                          I also want to point out a common misconception perpetuated by articles like the ones above: Cmd <> MS-DOS!



                          In FACT:




                          • Microsoft last shipped a "new" version of MS-DOS (v8.0 in Windows ME), on September 16th, 2000 - 16 years ago (as of this writing)!!

                          • MS-DOS was an operating system (albeit a relatively simple OS by today's standards) whose primary user-interface was a command-line shell, until Windows 3.x & 9.x arrived and ran on/around MS-DOS

                          • MS-DOS' command-line shell's scripting language was relatively terse and moderately powerful, but lacked many of the richer, and more advanced features we enjoy in modern-day PowerShell, Bash, etc.

                          • While later versions of MS-DOS grew in sophistication and added/replaced some older assembly with new code written in 'C', much of MS-DOS remained written in x86 assembly for efficiency, and because it was the only way at the time to gain access to many hardware devices and peripherals. This made MS-DOS non-portable to non-x86 CPU's. If you're so inclined, you can actually download the source code for MS-DOS v1.1 and v2.0 to see just how much of the earlier versions of MS-DOS were written in x86 assembly (hint: pretty much all of it)!


                          https://blogs.msdn.microsoft.com/commandline/2017/01/04/rumors-of-cmds-death-have-been-greatly-exaggerated/






                          Further reading




                          • Limitations of MS-DOS 6.22

                          • Commands and Their Availability From MS-DOS 6.22 through Windows 8

                          • New (and Removed) Commands in Windows 8

                          • How do modern .bat files differ from old MS DOS .bat files?

                          • Windows batch files: .bat vs .cmd?

                          • cmd.exe: comparison with MS-DOS Prompt


                          In conclusion, functionality-wise they may be a little bit similar, but otherwise hugely different






                          share|improve this answer


























                            0












                            0








                            0







                            They're not the same




                            Apparently lots of people don't realise that the DOS Prompt, and the Windows Command Prompt are not the same thing. They're actually two different programs - COMMAND.COM and CMD.EXE respectively.



                            Know Your Command Prompts




                            Firstly due to differences in the platform (DOS vs Windows) and interpreter (command.com vs cmd.exe), there will be obvious dissimilarities like




                            • DOS runs in fullscreen without a windowed mode, so no mode con:cols=COL lines=ROW command to resize the console, and no title command

                            • DOS doesn't support multitasking, multiuser, registry, permissions, long file names, symlinks/hardlinks, network, Unicode, dynamic disks and advanced volumes support... so no tools to manage those


                            But there are also major differences in the capabilities and syntax of internal commands between command.com and cmd.exe, as well as some external tools in the two environments. In MS-DOS there are





                            • No functions, code blocks () and local scopes which mean





                              • for, if... must be followed by a single command on the same line

                              • no exit /b or goto :eof

                              • no setlocal and endlocal


                              • goto can only jump to a label, call can only start another batch file


                              • commands can't be grouped together like



                                (
                                command1
                                command2
                                ) >output.txt




                            • No escape character ^. Printing special characters would be a pain, and no possibility of running multiline commands


                            • No special formats of if


                              • no if cmdextversion and if defined

                              • no numeric and case-insensitive string comparison if [/i] string1 compare-op string2



                            • No command history and command argument completion

                            • No indirect expansion (e.g. call set %%var%suffix%=string) of variables and no delayed expansion (e.g. echo !var%suffix%!)

                            • No advanced string manipulation


                              • no ~xxxV variable support

                              • no substring %variable:~num1,num2% or string replacement support %variable:str=newstr%



                            • No partial variable name matching for set, and


                              • no set /a so you can't do arithmetic

                              • no set /p which means reading user input is a pain

                              • no set "var=value" syntax



                            • No for /d, for /r or for /l. No for /f so reading input from files is also difficult. The only form of for in DOS is FOR %variable IN (set) DO command [command-parameters]

                            • No findstr, and find doesn't support Unicode

                            • No special environment variables like %CD% %DATE% %TIME% %RANDOM% %ERRORLEVEL% %CMDEXTVERSION% %CMDCMDLINE% %HIGHESTNUMANODENUMBER%

                            • Limited directory changing ability


                              • No pushd/popd

                              • No cd /d. Also no cd path with spaces and cd "path with spaces" due to the lack of long file name support



                            • No color

                            • No forfiles

                            • No assoc (because there are no GUI and files must be opened manually from command line, so no file association is needed)


                            A lot of useful external commands in Windows like where, sort, more (in some DOS versions), choice... are also missing in DOS





                            And this is what MS' Rich Turner said




                            Also, Cmd != MS-DOS!



                            I also want to point out a common misconception perpetuated by articles like the ones above: Cmd <> MS-DOS!



                            In FACT:




                            • Microsoft last shipped a "new" version of MS-DOS (v8.0 in Windows ME), on September 16th, 2000 - 16 years ago (as of this writing)!!

                            • MS-DOS was an operating system (albeit a relatively simple OS by today's standards) whose primary user-interface was a command-line shell, until Windows 3.x & 9.x arrived and ran on/around MS-DOS

                            • MS-DOS' command-line shell's scripting language was relatively terse and moderately powerful, but lacked many of the richer, and more advanced features we enjoy in modern-day PowerShell, Bash, etc.

                            • While later versions of MS-DOS grew in sophistication and added/replaced some older assembly with new code written in 'C', much of MS-DOS remained written in x86 assembly for efficiency, and because it was the only way at the time to gain access to many hardware devices and peripherals. This made MS-DOS non-portable to non-x86 CPU's. If you're so inclined, you can actually download the source code for MS-DOS v1.1 and v2.0 to see just how much of the earlier versions of MS-DOS were written in x86 assembly (hint: pretty much all of it)!


                            https://blogs.msdn.microsoft.com/commandline/2017/01/04/rumors-of-cmds-death-have-been-greatly-exaggerated/






                            Further reading




                            • Limitations of MS-DOS 6.22

                            • Commands and Their Availability From MS-DOS 6.22 through Windows 8

                            • New (and Removed) Commands in Windows 8

                            • How do modern .bat files differ from old MS DOS .bat files?

                            • Windows batch files: .bat vs .cmd?

                            • cmd.exe: comparison with MS-DOS Prompt


                            In conclusion, functionality-wise they may be a little bit similar, but otherwise hugely different






                            share|improve this answer













                            They're not the same




                            Apparently lots of people don't realise that the DOS Prompt, and the Windows Command Prompt are not the same thing. They're actually two different programs - COMMAND.COM and CMD.EXE respectively.



                            Know Your Command Prompts




                            Firstly due to differences in the platform (DOS vs Windows) and interpreter (command.com vs cmd.exe), there will be obvious dissimilarities like




                            • DOS runs in fullscreen without a windowed mode, so no mode con:cols=COL lines=ROW command to resize the console, and no title command

                            • DOS doesn't support multitasking, multiuser, registry, permissions, long file names, symlinks/hardlinks, network, Unicode, dynamic disks and advanced volumes support... so no tools to manage those


                            But there are also major differences in the capabilities and syntax of internal commands between command.com and cmd.exe, as well as some external tools in the two environments. In MS-DOS there are





                            • No functions, code blocks () and local scopes which mean





                              • for, if... must be followed by a single command on the same line

                              • no exit /b or goto :eof

                              • no setlocal and endlocal


                              • goto can only jump to a label, call can only start another batch file


                              • commands can't be grouped together like



                                (
                                command1
                                command2
                                ) >output.txt




                            • No escape character ^. Printing special characters would be a pain, and no possibility of running multiline commands


                            • No special formats of if


                              • no if cmdextversion and if defined

                              • no numeric and case-insensitive string comparison if [/i] string1 compare-op string2



                            • No command history and command argument completion

                            • No indirect expansion (e.g. call set %%var%suffix%=string) of variables and no delayed expansion (e.g. echo !var%suffix%!)

                            • No advanced string manipulation


                              • no ~xxxV variable support

                              • no substring %variable:~num1,num2% or string replacement support %variable:str=newstr%



                            • No partial variable name matching for set, and


                              • no set /a so you can't do arithmetic

                              • no set /p which means reading user input is a pain

                              • no set "var=value" syntax



                            • No for /d, for /r or for /l. No for /f so reading input from files is also difficult. The only form of for in DOS is FOR %variable IN (set) DO command [command-parameters]

                            • No findstr, and find doesn't support Unicode

                            • No special environment variables like %CD% %DATE% %TIME% %RANDOM% %ERRORLEVEL% %CMDEXTVERSION% %CMDCMDLINE% %HIGHESTNUMANODENUMBER%

                            • Limited directory changing ability


                              • No pushd/popd

                              • No cd /d. Also no cd path with spaces and cd "path with spaces" due to the lack of long file name support



                            • No color

                            • No forfiles

                            • No assoc (because there are no GUI and files must be opened manually from command line, so no file association is needed)


                            A lot of useful external commands in Windows like where, sort, more (in some DOS versions), choice... are also missing in DOS





                            And this is what MS' Rich Turner said




                            Also, Cmd != MS-DOS!



                            I also want to point out a common misconception perpetuated by articles like the ones above: Cmd <> MS-DOS!



                            In FACT:




                            • Microsoft last shipped a "new" version of MS-DOS (v8.0 in Windows ME), on September 16th, 2000 - 16 years ago (as of this writing)!!

                            • MS-DOS was an operating system (albeit a relatively simple OS by today's standards) whose primary user-interface was a command-line shell, until Windows 3.x & 9.x arrived and ran on/around MS-DOS

                            • MS-DOS' command-line shell's scripting language was relatively terse and moderately powerful, but lacked many of the richer, and more advanced features we enjoy in modern-day PowerShell, Bash, etc.

                            • While later versions of MS-DOS grew in sophistication and added/replaced some older assembly with new code written in 'C', much of MS-DOS remained written in x86 assembly for efficiency, and because it was the only way at the time to gain access to many hardware devices and peripherals. This made MS-DOS non-portable to non-x86 CPU's. If you're so inclined, you can actually download the source code for MS-DOS v1.1 and v2.0 to see just how much of the earlier versions of MS-DOS were written in x86 assembly (hint: pretty much all of it)!


                            https://blogs.msdn.microsoft.com/commandline/2017/01/04/rumors-of-cmds-death-have-been-greatly-exaggerated/






                            Further reading




                            • Limitations of MS-DOS 6.22

                            • Commands and Their Availability From MS-DOS 6.22 through Windows 8

                            • New (and Removed) Commands in Windows 8

                            • How do modern .bat files differ from old MS DOS .bat files?

                            • Windows batch files: .bat vs .cmd?

                            • cmd.exe: comparison with MS-DOS Prompt


                            In conclusion, functionality-wise they may be a little bit similar, but otherwise hugely different







                            share|improve this answer












                            share|improve this answer



                            share|improve this answer










                            answered yesterday









                            phuclvphuclv

                            9,77863992




                            9,77863992






























                                draft saved

                                draft discarded




















































                                Thanks for contributing an answer to Super User!


                                • Please be sure to answer the question. Provide details and share your research!

                                But avoid



                                • Asking for help, clarification, or responding to other answers.

                                • Making statements based on opinion; back them up with references or personal experience.


                                To learn more, see our tips on writing great answers.




                                draft saved


                                draft discarded














                                StackExchange.ready(
                                function () {
                                StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f451432%2fare-the-command-prompt-and-ms-dos-the-same-thing%23new-answer', 'question_page');
                                }
                                );

                                Post as a guest















                                Required, but never shown





















































                                Required, but never shown














                                Required, but never shown












                                Required, but never shown







                                Required, but never shown

































                                Required, but never shown














                                Required, but never shown












                                Required, but never shown







                                Required, but never shown







                                Popular posts from this blog

                                VNC viewer RFB protocol error: bad desktop size 0x0I Cannot Type the Key 'd' (lowercase) in VNC Viewer...

                                Couldn't open a raw socket. Error: Permission denied (13) (nmap)Is it possible to run networking commands...

                                Why not use the yoke to control yaw, as well as pitch and roll? Announcing the arrival of...