How to use Unix/Linux commands at the Windows command prompt

A lot of us who use Linux at work/school or have always grown up using unix commands for years and more often than not, there might have been instances where a ls command comes more naturally than the dir command at the command prompt in Windows. For the most part, a lot of us work around this drawback using the excellent tool: Cygwin. Cygwin is available for windows users here.The Cygwin tools are ports of the popular GNU development tools for Microsoft Windows. They run thanks to the Cygwin library which provides the UNIX system calls and environment these programs expect.

With these tools installed, it is possible to write Win32 console or GUI applications that make use of the standard Microsoft Win32 API and/or the Cygwin API. As a result, it is possible to easily port many significant Unix programs without the need for extensive changes to the source code. This includes configuring and building most of the available GNU software . Even if the development tools are of little to no use to you, you may have interest in the many standard Unix utilities provided with the package. They can be used both from the bash shell (provided) or from the standard Windows command shell.

While Cygwin would be an obvious choice for many Unix/Linux power users, there is an excellent and a much simpler alternative to using Cygwin. In this article, we will show you how to run your Unix commands right in the windows command prompt.

For this, we will be using CoreUtils. CoreUtils is available through Sourceforge and is available for download here. If you look in here, there are a number of GNUWin32 packages available, the one we would be using is the CoreUtils package. CoreUtils is a collection of basic file, shell and text manipulation utilities of the GNU operating system. These are the core utilities which are expected to exist on every OS. And when I talk about File utilities, they include chgrp, chmod, cp, dd, du, ln, ls, mkdir, mv, rm, touch, vdir among others. A sample of the text utilities include cat, cksum, cut, join, md5sum, shasum, sort, split etc. The shell root commands include echo, chroot, hostname, nice, pathchk, tty, who, whoami and yes su. So it is pretty much the whole nine yards here… The direct link for download of the CoreUtils package available through SourceForge is available here.

Once installed, you will need to add the path to the utilities to your PATH environment variable. Follow the steps below to achieve this

1. Click on Start –> Run and enter sysdm.cpl to bring up the system properties Dialog

2. Click on the Advanced tab –> Environment variables button Path to environment variable

3. In the System Variables pane, scroll down to Path and then click on edit.

4. Under Edit System Variable, in the variable value, at the end of the line , type the following including the semicolon which separates the individual elements in the path variable. ;C:\Program Files\GnuWin32\bin

env variable properties

Congratulations !! You have now added the GNUWin directory to your path and Unix commands can now be executed directly from the command line and run natively on the Win32 command prompt without the need for any emulation layer as shown below using the example of dir vs ls

command prompt comparing dir vs lsDownloads and Sources

1. Download CYGWIN

2. Download CoreUtils

If you liked this article, click here to buy me a beer!

Dear visitor, if you enjoyed reading this post, you may want to subscribe to my RSS feed. Thanks for visiting!

Related Posts

Comments

Comments

15 Responses to “How to use Unix/Linux commands at the Windows command prompt”
  1. anonymous says:

    In the command prompt, is there a way to unzip/ open winzip files if you dont have winzip?

  2. Zalam says:

    Dear Sir
    I read your article it is quite interseting and have an innovative move of having linux command under Linux.
    Dear Sir I have wine package installed under my Linux Box.It has a sub package winelib which provide the user with compiling a win32 application under Linux and is ran as native Linux executable. I want to execute a Linux command in a win32 application. I have the environment for compiling a win32 application but I don’t have a win32 application that a Linux command in it. If you may please help me How I can use Linux command in a win32 application I’ll be greatefull if you may help me in this
    thanx

  3. siva says:

    i want the unix codings to work in windows command prompt

  4. kavitha says:

    i need how to use a linux commands in windows

  5. matelot says:

    damn stupid comments above….

  6. Vishal says:

    Hi can we add more commands to this…like i m unable to run wget command on windows….pls help me out…:))

  7. stupid_students says:

    I want run c# commands in Eclipse.Please help.

  8. Shakil says:

    i am a windows user but i want to use linux command in windows pc because now i need to work on a linux server

  9. SR says:

    Thanks a lot.. Simply superb

  10. hector says:

    nice tip! very cool

  11. yashwanth says:

    its working, but not all the cmds.
    clear,vi editor is not working.
    anyways great attempt,
    thanks a lot

  12. Tensigh says:

    Worked great, thanks for the article and links.

    vi and clear aren’t listed in coreutilities. I would imagine there’s a GNU version of vi available for Windows, though why would you want it? Ugh.

Trackbacks

Check out what others are saying about this post...
  1. [...] 4. How to use Unix/Linux commands at the traditional command prompt from AskStudent [...]

  2. [...] I’m not a Windows command line user at heart, I was raised during my Computer Science classes to poke around Linux machines. Sadly, certain commands like ls -la come much more naturally to me than dir /aMy solution to this is installing the CoreUtils for Windows package, which adds most of the core GNU utilities into the command line. This hack requires installing a package from SourceForge and adding to the PATH environment variable, which are covered in this blog post over at AskStudent.com. [...]



Speak Your Mind

Tell us what you're thinking...
and oh, if you want a pic to show with your comment, go get a gravatar!