Linux Windows

Windows 10 Receives a Full Linux Command Prompt

Matthew Hughes 31-03-2016

Microsoft recently kicked off its annual Build Developer Conference. It was no typical event. Microsoft pulled out all the stops, and demonstrated remarkable advances in artificial intelligence, augmented reality, and cemented the reputation of Windows 10 as a formidable gaming platform. But Microsoft also announced something else. Something that is getting a lot of people excited.


On stage in San Francisco, development director Kevin Gallo announced that the BASH shell would be coming to Windows 10. Well, kinda.

Straight Outta’ Ubuntu

To say that BASH is coming to Windows 10 is to massively understate the situation, because really, what Microsoft’s been working on is far more impressive than that. It’s essentially a Linux subsystem – not a virtual machine – based on Ubuntu 14:04 LTS, which grants access to the Ubuntu userspace.

It’s important to stress that this is fundamentally different to what existed previously. Windows 10 won’t be emulating Ubuntu in a pared-down virtual machine What Is a Virtual Machine? Everything You Need to Know Virtual machines allow you to run other operating systems on your current computer. Here's what you should know about them. Read More . Neither has BASH been compiled for Windows, like Cygwin is, or recreated in JavaScript, like CASH is Forget Cygwin: CASH Brings The Best Of Linux To Windows Linux and Windows are very different operating systems, and nowhere is that more apparent than with the command line. Various tools are available to make Windows feel more like Linux, such as Cash. Read More . Rather, it is running in what essentially amounts to a compatibility layer.

Linux system calls (often called ‘syscalls’, essentially when a program requests something from the OS kernel) are translated in real-time to Windows system calls, using some custom software built by Microsoft. This distinction is explained better by Dustin Kirkland, who is one of the Canonical engineers who helped Microsoft port it.

This means that it’s not just BASH and the associated essential Linux utilities being ported. It’s almost everything.


Users will be able to use the standard Linux SSH utility How to Set Up SSH on Linux and Test Your Setup: A Beginner's Guide Need to access your Linux computer or server remotely? Here's how to set up and configure SSH on Linux, Windows, and mobile. Read More , rather than using a third-party tool like PuTTY How to Use SSH in Windows: 5 Easy Ways SSH is an encrypted network protocol used for remote access. Here's how to use SSH in Windows using native and third-party apps. Read More . They will be able to edit text with VIM The Top 7 Reasons To Give The Vim Text Editor A Chance For years, I've tried one text editor after another. You name it, I tried it. I used each and every one of these editors for over two months as my primary day-to-day editor. Somehow, I... Read More from the command line, and manipulate text using Sed and Awk Every Linux Geek Needs To Know Sed and Awk. Here's Why... Two of the most criminally under-appreciated Linux utilities are the admittedly arcane Sed and Awk. But what are they? How are they used? And how do they make it easier to process text? Read More . Even better, they will be able to use apt-get to manage their packages, and to install tens of thousands of Ubuntu binaries.

According to Dustin Kirkland, most things work pretty well, with the exception of some applications that use a TTY – such as byobu, screen, and tmux. He assures us they’re getting there though, and given that Microsoft put this front-and-center at their Build 2016 keynote, you can be pretty confident that eventually it will be a finished, polished product.

What This Means for Joe User

I’m not going to lie. This announcement will appeal overwhelmingly to two groups of people: Linux enthusiasts and software developers. If you’re not one of them, you may be wondering what this means for you. But there is cause to be excited, even if you’re not an arch-geek.


Firstly, it presents a great way for people to dip their toe into the sometimes-murky waters of the Linux ecosystem, without having to actually install it. Absolute newbies will be able to learn the essentials of common Linux tools from the familiarity and relative safety of Windows 10.

Secondly, it’s also great for those who are learning to code for the first time. Many of the easiest languages to learn (and consequently, the most popular with beginners), are also the most irritating to install on Windows. Installing Python properly, for example, requires you add a variable to the Windows PATH. If you want to easily install Ruby and the assorted essential documentation and tools, you’ll have to use a third-party installer like RubyInstaller.


But now, would-be developers would merely need to type “bash” into their command line, and they’d be able to start hacking away at a Ruby or Python script, without having to worry about the vagaries of configuring these languages on Windows.


Plus, since the majority of beginner tutorials are built around Mac OS X and Linux, Windows users will be able to use them without any problem.

Linux on Windows: Why This Matters for Developers

Historically, Microsoft’s command-line (sorry, command prompt) tools haven’t measured up to those on UNIX based operating systems. The biggest reason for this is because Windows has always emphasized in solving tasks and problems through graphical interfaces and menus, not via the terminal. While this is great for users, it’s less great for developers, who over the past twenty years have increasingly depended on Linux-based servers, which are far more reliable and secure.

A consequence of this is that developers have increasingly drifted away from Windows. If you go to any developer conference or meetup, or visit the offices of any technology startup, you can almost guarantee that the majority of devices being used are Apple laptops, or PCs running Linux. They’re unlikely to switch back, either, as they’ve since learned how to use these operating systems, and built workflows based around them.


One developer I worked with when I was a summer intern at ScraperWiki – a data science startup in Liverpool – had a tightly customized VIM editor, and a routine that centered around a handful of common (and some uncommon) Linux utilities. It’s hard to imagine him comfortably switching back to Windows.

Perhaps Ubuntu on Windows 10 will be enough to coax these developers back to the Microsoft fold, or at least stop the hemorrhaging of developers from the Windows platform.

It also goes a long way to repair Microsoft’s tarnished reputation, especially when it comes to the open source community. The early 2000s and late 1990s, Microsoft was overtly hostile to open source and Linux: then CEO Steve Ballmer described it as a “cancer”, and they tried to kill it (as well as some rival proprietary products) with the “embrace, extend, extinguish” strategy.

But since the arrival of Satya Nadella as CEO, they’ve made a concerted effort Does Microsoft Really Love Linux After All? Microsoft and Linux have had a tumultuous relationship. Over the years, CEOs have expressed a desire to see Linux disappear, but these days the story is different. Does Microsoft really like Linux after all? Read More to work with the open source community and to rehabilitate their image in this respect. It seems to have worked.

How to Get BASH for Windows 10

At the time of writing, BASH has only been announced – you can’t actually get it, yet. Although it will be a part of the upcoming Windows 10 Anniversary Update, which is scheduled to land this summer. Given it’s an “anniversary update” and Microsoft launched Windows 10 on July 29, you should expect it by then.

If you can’t wait that long, you’ll be able to get your hands on it through the Windows 10 Insider Program Be the First to Test New Windows 10 Builds as Windows Insider Windows Insiders are the first to test new Windows 10 builds. They are also the first to suffer from bugs. Here we show you how to join or leave the program and how to share... Read More .

Are you excited about the arrival of BASH on Windows 10? Will it be enough for you to switch from Linux? Let me know in the comments below.

Related topics: Linux Bash Shell, Ubuntu, Windows 10, Windows Upgrade.

Affiliate Disclosure: By buying the products we recommend, you help keep the site alive. Read more.

Whatsapp Pinterest

Leave a Reply

Your email address will not be published. Required fields are marked *

  1. jmacw
    May 4, 2016 at 3:38 am

    I am very skeptical - if they really want to make the open source community believe them, how about helping with compatibility in the other direction? Maybe they could make an interface that lets me run Windows programs on my safe and secure Linux Box - Yes, I know I can use WINE, but some software will not run on WINE....

    Imagine running some of the Windows software on my linux box and not worrying about viruses or Malware!

  2. Overwin
    April 23, 2016 at 6:26 pm

    This is..., OK I'm sorry I just don't trust them. Assuming this isn't an April Fools joke, I truly believe this is still just a part of the Embrace, Extend, Extinguish agenda. On the surface (no pun intended) it looks as if there is a lot to be gained from this, such as the points mentioned about easing developer's pain and bringing devs back to Windows. But given their history and what we know about them...really? SERIOUSLY?!!

    Yes, "relative safety" had me ROTFLMFAO as well!

    @Juandoseven Dotseroserojuan Sorry for your intelligence envy.

  3. Anonymous
    April 22, 2016 at 6:31 am

    Thanks! Now I will get the Linux feeling in my Win 10 too.

  4. Juandoseven Dotseroserojuan
    April 12, 2016 at 11:26 pm

    Oh look, a gaggle of nerds. I'd stay and chat but I'd prefer to take my safety chances in the real world. Don't forget to turn off the hallway light in your moms basement after a tough night of not getting laid.

  5. Frank
    April 1, 2016 at 10:54 pm

    I hope that this is not an elaborate April Fools Joke.

    Also, this is I think, is a natural progression. That eventually all the operating systems will eventually merge together at some point someday.

    ALL of the OS's originated from a Unix base at the very beginning.

    • Robert Cochran
      January 5, 2017 at 5:13 am

      Windows has been running on a "Microsoft Unix" subsystem "kernel" since ME I think or at least since XP with a DOS overlay with windows gui on top of that (kind-of like a Dalvic Virtual Machine on your Android) I can't remember how I found it back then but sure as hell it was there in all its ASCII glory. I accidently crashed the computer and all it would say until I figured it out was a full screen "MICROSOFT UNIX" and some basic instructions on a Blue and White screen like the infamous BSOD. It kind of blew my mind at the moment but after I started messing with its command line I got it working again... Weirdest shit that I've ever seen.

  6. Anonymous
    April 1, 2016 at 8:13 am

    Interesting news! Hope it will be done soon.

  7. Joseph Pollock
    April 1, 2016 at 6:21 am

    It is April 1st...

  8. Jim Mills
    March 31, 2016 at 4:02 pm

    "It’s important to stress that this is fundamentally different to what existed previously."

    What existed previously and was taken out in Windows 8.1 was "Windows Services for UNIX" compatibility layer. What this looks like is a revamp of that, adding back compatibility. How is what they are adding back fundamentally different?

  9. Augusto
    March 31, 2016 at 2:05 pm

    "Firstly, it presents a great way for people to dip their toe into the sometimes-murky waters of the Linux ecosystem, without having to actually install it. Absolute newbies will be able to learn the essentials of common Linux tools from the familiarity and relative safety of Windows 10."

    LOL I can't even

    • Andy G
      April 1, 2016 at 3:12 am

      Yeah, "relative safety" had me laughing out loud.

  10. Anonymous
    March 31, 2016 at 2:02 pm

    "Windows 10 Receives a Full Linux Command Prompt"
    What is this world coming to?! Microsoft embracing Linux? This the first step on the road to Embrace, Extend, Extinguish bu M$.

    " Absolute newbies will be able to learn the essentials of common Linux tools from the familiarity and relative safety of Windows 10."
    Another way of looking at this is that all the Windows problems will now be brought into Linux.