Can Windows use a Linux shell instead of cmd?

15

2

I was wondering if it is somehow technologically possible for Windows to add some sort of Linux interface? I think it would win over many programmers to develop on Windows.

Any ideas on this?

Genadinik

Posted 2011-05-02T20:21:58.543

Reputation: 255

I agree @BrianVandenberg. It is marginally better than the DOS command line, but a long way from a Unix/Linux shell. – Philip Kearns – 2016-09-13T16:25:31.060

6Why not use powershell? – Steven Evers – 2011-05-02T20:49:53.853

3Windows does not use DOS. – user1686 – 2011-05-03T05:11:25.603

4Powershell is painfully irritating to use. In addition, its documentation is deplorable. – Brian Vandenberg – 2011-07-28T18:36:48.290

Answers

23

As well as Cygwin which @ChrisF has mentioned, you can also install a collection of tools ported from Unix that run in a normal Windows environment. Two such examples:

This enables you to be in a Command Prompt and use commands such as grep, ls, awk and so on. Once you've put the extracted folder in your environment path, the experience of using them is pretty seamless and blends in well:

enter image description here

Gaff

Posted 2011-05-02T20:21:58.543

Reputation: 16 863

18

Take a look at Cygwin. It's

a collection of tools which provide a Linux look and feel environment for Windows.

(taken from their home page).

ChrisF

Posted 2011-05-02T20:21:58.543

Reputation: 39 650

Yeah I know about Cygwyn, but I was asking why they don't make in more integrated? Its annoying to have to install new software when it could also be already part of your system. – Genadinik – 2011-05-02T20:32:06.573

5@Genadinik - you should have included that in your question ;). There's no native support (nor can I see why Microsoft would want to include it) so you're stuck with installing a 3rd party application. – ChrisF – 2011-05-02T20:36:05.020

5

Running Cygwin will install a number of familiar linux shells like bash and tcsh, and allow you to run the shells in Windows, but also run Linux applications directly from the Windows command line.

Make sure that all the /bin/ directories installed in Cygwin are in your Windows PATH variable, and you can have the hybrid Windows/Linux experience from Windows. Even ls.

Resorath

Posted 2011-05-02T20:21:58.543

Reputation: 1 027

3

MSYS is a set of GNU tools for Windows, the installer can be found here. (install only MSYS, not MinGW)

Then you'll have to add MSYS tools to your PATH variable: run systempropertiesadvanced from the Run window (Win+R), click Environment variables and find Path variable in the lower box, add a semicolon and MSYS's path (default is C:\MinGW\msys\1.0\bin).

It's also nice to have bash on Windows, so you should consider adding C:\MinGW\msys\1.0 too (bash will be launched by command msys, not bash!). Changes will be fully applied after relogging.

Additional tools like vim can be easily googled and added in a similar manner.

gronostaj

Posted 2011-05-02T20:21:58.543

Reputation: 33 047

2

Another opportunity is to use the WSL - Windows Subsystem for Linux. A native bash is provided.

enter image description here

GABIKA6

Posted 2011-05-02T20:21:58.543

Reputation: 129

It's worth adding that it's only available for Windows 10+. – thiagowfx – 2016-10-17T05:18:34.973

1

Besides the answers already mentioned (Cygwin is my personal favorite), Microsoft is also working to officially bring the Bash shell to Windows. It's still in beta at this point, but you can check it out here: https://msdn.microsoft.com/en-us/commandline/wsl/about. If you want to install it, you'll need Windows 10 Anniversary Update build 14393 or later.

PunctualEmoticon

Posted 2011-05-02T20:21:58.543

Reputation: 167

0

There's Portable Ubuntu for Windows.

It runs Ubuntu as a windows application, instead of having to boot it separately.

Brian Vandenberg

Posted 2011-05-02T20:21:58.543

Reputation: 504

1Yawn, he didn't ask for a VM. – mathepic – 2011-05-02T23:07:28.123

@mathepic - It isn't a VM. – Brian Vandenberg – 2011-05-02T23:21:52.593

1from the article (since your homepage is a broken link), it looks like its a VM that integrates with Windows. – mathepic – 2011-05-02T23:24:43.357

@mathepic - As you pointed out, the homepage link is broken. I'll remove that. However, the following wikipedia entry backs up my statement: http://en.wikipedia.org/wiki/Comparison_of_Windows_and_Linux#Emulation_and_virtualization

– Brian Vandenberg – 2011-05-03T15:28:24.707