Originally posted by: KF
	
	
		
		
			Originally posted by: Nothinman
	
	
		
		
			Not to knock linux, since the command line shell of XP/NT (and DOS) is a knockoff of historic unix shells, but a lot (all?) of what drag mentions is available in XP.
		
		
	 
No offense but if you think that the shells are anything like each other you should use a real bash shell for a while, cmd is an extremely poor shell in comparison.
		
 
		
	 
OK, bash contains gobs of superfluous, extraneous complications that Windows doesn't need because it accomplishes these things in other ways. But notice all I said was that what drag mentioned as great features in bash are the same in cmd. So what is the complaint? IAC, it should be obvious that the XP style CLI was derived from unix. If you don't see it, you aren't looking.
		
 
		
	 
Rename every file of the form "foo*.mp3" to "bar*.mp3" in a directory on your windows box.  You can do it (hint: for /?, takes a while to figure it out, there's some stupid inconsistent uses of % in variable names), but it isn't easy.
	
	
		
		
			But lets be frank. Command line processors are relics. They are crap. Their only rationale is their ease of implementation.
		
		
	 
You ever try to write one?  Writing a decent one isn't easy.  How do I know?  
I wrote one.  It took most of the class most of the week to get an almost-functional implementation, and the CS majors at CMU are nerds who spend all day writing programs (us ECEs are really cool though 

).  I would think writing a simple GUI environment (given a framework that lets you create buttons/etc... like in VB or Java + SWT) wouldn't take as long.
	
	
		
		
			You can try to take the nasty edges off, with conveniences like help, command completion, line editing and scripts, but the idea is bad. It's only nerdy oddballs who like that type of thing, the kind who enjoy twiddling with the OS internals as a blood sport.
		
		
	 
No, people who actually get work done on computers use command line interfaces too...
	
	
		
		
			No offense. I only use a command line when I can't find another way, which surprisingly is fairly often. I think its because once they put a decent user interface on a shell, the programmers start worrying that civilians might use it, and they take all the meat out of it and cripple it, so no one can reek havoc by accident. That's why the XP desktop is the way it is.
		
		
	 
You're saying the commandline is good now? 
		
		
	
	
	
	
		
		
			As for bash, I have in the past listed the internals for myself, and 90% or more are things, to the extent that I understand what they are, that I don't want to have anything to do with, ever.
		
		
	 
That's because you just surf the web and play games.  And maybe run MS Word.
	
	
		
		
			The same goes for the command line switches of common unix untilities. I look in vain for the one I need, if it exists. I don't want a lifelong career learning how to do things the supposedly "easy way" in linux. In comparison, cmd, as limited as it may be, is well-thought-out and organization.
		
		
	 
Nobody said unix was well-documented.
MS's commandline is well-thought-out?  Try "netstat -?".  Then try "dir -?".  When do you use a / and when do you use a -?.  cmd doesn't even support job control - once you launch a background app from it, you can know NOTHING about what happened to it, what it's doing, and you can't control it.
At home I use Windows... at work I use Linux (or Solaris).  For large amounts of file manipulation, windows is a PITA.  Run a circuit simulator, dump the results to a text file, sort the file by various columns, and print the best 5 in a GUI.  Odds are that in order to do that fast, you'd end up using the command interface for the application (like in matlab).
source run_spice.csh -log foo.txt && sort -n +18 foo.txt |head -n 5
Ok, so maybe it took me half an hour to figure out how to do that the first time.  But once I do it the first time, I can just do "!sou" to run it again in the same shell.  If that was a GUI, you'd be clicking... and clicking... and clicking.
Let's say my circuit generator gives me a file that isn't exactly the same as what my spice (the dominant type of circuit simulator in use) engine wants.
cat "generated.circuit" |sed -e "s/nmos/nfet/g;" > spice.circuit
Do a search and replace over and over again in a GUI.  You could open the file in notepad and "replace all", but after a couple dozen times, that gets pretty tedious.