Is there any functional-like Unix shell?

Why did Microsoft never develop the command prompt like the Unix shell?

  • If you have been using Unix for some time now (mostly as a software developer) and use Windows for some tasks, it is quite likely you would not find the same kind of functionalities on Windows command prompt. Shell scripting gave so much power to Unix users. While you can create a script for command prompt as .bat files, the amount of functionality provided by Unix is unmatched even like small functionalities like grep, find. So my question Why did Microsoft never put in efforts to develop the command prompt.

  • Answer:

    There's plenty of analogous commands for PowerShell that match the functionality of Unix: http://www.yolinux.com/TUTORIALS/unix_for_dos_users.html For example, this includes a DOS parallel for "grep", "FIND" or "FINDSTR". I won't make the effort to defend Powershell, or Microsoft, but to say their command prompt is less thorough would be a gross misunderstanding of command prompt and the powershell functionality.

Joseph Marhee at Quora Visit the source

Was this solution helpful to you?

Other answers

When Microsoft first started out, their command-line environment was MS-DOS, which they purchased from Seattle Computer Product (it was originally Q-DOS). At that time, DOS was patterned after CP/M which similarly was designed to work on a variety of hardware configurations. It offered similar commands and functioned in a similar way. By that time UNIX was already a very mature operating system, but one designed for much larger time-sharing system with greater storage and processing power. It would have been impractical, at the time, to attempt to develop the UNIX environment for the nascent PC platform (which didn't really have the hardware capabilities at the time). MS-DOS was primitive, but widely thought to be simple and sufficient enough for the business computer use-case. Further, it wasn't expected that business users were interested in any form of scripting or programming, unlike the researchers using UNIX-type systems at the time. Eventually, Microsoft developed their Windows system, and then the focus was on eliminating command-line interaction with the system as much as possible. It was still considered an edge case that people would want to write scripts for their computers - certainly not a very common activity. Further, the multitasking features that really make UNIX-style scripting id not yet exist. Ultimately, later versions of Windows included all the resources and capabilities necessary to support a UNIX-style environment, but the command-line was still a niche that wasn't so important. The rise of Linux and the value found in it's scriptability and configurability (and subsequent criticism of Microsoft for lacking in that area), prompted Microsoft to develop a shell that provided its own syntax and that promoted the COM/ActiveX/DLL "Objects" and system services as first-class objects in the PowerShell environment. PowerShell provides what's essentially a rough replacement for the UNIX shell - it's more closely related to Rexx than, say, bash, but it's a powerful tool in the Windows environment. That said, it doesn't provide all of the same functionality.

James McInnes

Related Q & A:

Just Added Q & A:

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.