Microsoft PowerShell RC1
rst+ack writes "Microsoft has released RC1 version of PowerShell the .NET-based shell with perl-like syntax previously known as Monad or MSH. PowerShell (PS) has been covered a few times on Slashdot. Contrary to cmd.exe and Unix/Linux shells it operates on objects, not text when passing data between scripts and executables. Easy access to .NET classes allows users to create quite advanced solutions in short time. PS won't be shipped with Vista or Windows Server 2007 but it will debut with Exchange 12."
Can you resize the window and copy and paste easily into the windows. If so it's already 10 times better then CMD.EXE.
evil is as evil does
Why would you want to use an arbitrary, difficult to debug format like text when you could use
-Peter
Ahem:
Those who do not understand Unix are condemned to reinvent it, poorly.
Probably never, would be my guess, but one of the things I find annoying is how much reinvention-of-the-wheel Microsoft gets away with and yet continues to make the ridiculous claim that they're innovating, when in fact they're merely catching up. Bill Gates, welcome to 1994.
Dog is my co-pilot.
When will the Windows command line finally have this?
We WANT Linux/Unix shells...they work just great, and have lots of tool support...and have lots of good documentation...and have 20+ years of abuse.
If so, sign me and Fred Savage up!
"Made up/misattributed quote that makes me look smart. I am on
I don't know, it sounds a lot more like the REXX and AppleScript way of doing things to me. An application exposes a dictionary of possible actions (rephrased in OO, an application object exposes methods) and passes the results to the next REXX or AppleScript-aware application.
Both REXX and AppleScript predate wide scale adoption of OO, so I might be off-base. It does sound very similar though, and personally I think there's room for both that approach and the classic Bourne shell-style approach.
Cheers,
Ian
Is it just me or does it seem insanely odd that a "shell" for an OS is a) shipped seperately and b) doesn't use text as a native data type? Maybe I'm stuck in the "past," but I always saw the shell as the barebones method for a user interact with an OS. Either this really is cutting edge (object data types) or this is just a hyped-up .NET application that is designed to *look like* the shell.
I wonder if the trademark works. They will probably have to call it Power Microsoft Shell. People will likely want to have Unix-like piping of textual results. Does this mean a Text array gets instantiated, or is it a stream object?
It will be a general download to the OS as well. It's just that the admin scripts shipped with Exchange will rely on it.
Guys, next time, think about making it do something before you put out a release candidate.
This is Slashdot. You're not supposed to actually click on the links in the article...
Where do you see ANY indication that this will cost you $? For god's sake, can we please stop the nonsensical MS bashing?
Windows PowerS hell
I knew it all along!
brightloudnoise.com
I didn't :-)
What I want to know: does it come with a text version of Clippy?
Nothing interesting to say...MUST...NOT...REPLY...ohtheheckwithit.
Shame you didn't RTFA, you'd look smarter.
Hm, what kind of security do you expect in a shell? But, IIRC, you can run scripts under any .NET permission set, which means that you can emulate stricter permissions than the user you are running under (just like the Java VM does). I think there is also some code signing possible, but it's always a tradeoff, isn't it? It's not exactly like you want to log into some kind of stealth mode to just sign a script you have edited.
So: You want a shell-like environment that lets you type in commands to operate on objects representing files, directories, etc.
Great! Install python*, install the file packages, open the interactive interpreter... you're done.
Why bother waiting for this MONAD thing? It looks like all MONAD offers over any other interactively interpreted programming language right now is that it is compatible with the C# object model. Which, y'know, on the one hand, the UNIX "glue" platforms (python, perl, ruby, kde, gtk) could totally benefit from a unified object model that would allow you to construct an object in a GTK+ application, pass it to a perl script, pipe it to a ruby app, etc. But, y'know, on the other hand, python on windows supports the CLR/C# object model as well... and it's available now.
* Or ruby.
Is that like a gonad, but you only have one? And I thought eunuchs had it tough!
Who's your user, program?
If you think bash is a good language because you can embed perl into it, you seriously need to back away from the xterm and get some fresh air.
RTFM mate. This is not reinventing the wheel. It's adding a few more spokes, better tires and tougher rubber.
PGP KeyId: 0x08D63965
The thing in *nix is that most applications support the shell. They are built for piping stuff in any possible way. Are the Windows applications going to be built with the shell in mind or is this going to be yet another cmd.exe where you have to build your own stuff to do what you want instead of like *nix where you just pipe at your hearts content.
I have also a hard time imaging using objects being easier to understand for normal admins and users.
Also, when exactly did the shell stop to suck and begin to be a good feture? The same second Microsoft made their own version?
HTTP/1.1 400
Uh, it is a COMMAND SHELL? Of course it's text input based. They also claim that future graphical admin tools will render the equivalent commands in a text field, somewhat like what you describe. But this one certainly uses a text-based interface... The object-orientation is just about how commands interact with each other, especially when piping. Plain text piping between commands (note, not processes, the builtin commands are objects that will generally live in the same process as the shell itself) is a limited special case of this.
The parent is a technical question about the newly released technical solution that the slashdot story refers to. What variety of crack is so powerful that ANY mod could have possibly considered the parent post offtopic????!!!
Unix shell scripts are also incredibly good at manipulating text files, using awk, grep, sed, cut, etc. I tried to do such a task with PowerShell and found it wanting. I revered to Windows Services for Unix (basically the Korn shell).
For those who don't know, a monad is a notion in functional programming languages that is a way to structure computations in terms of values and sequences of computations using those values. Monads allow the programmer to build computations using sequential building blocks, which can themselves be sequences of computations. This is not dissimilar to how PowerShell works, but really, I when manipulating text files, I don't want to be dealing with functional programming language abstractions.
No, linux is an implementation of Unix, not a reinvention of it. It's POSIX-compliant. Windows is still fumbling around with basic lessons which were learned by unix professionals years ago. Nothing different than you'd expect from an OS designed for home computers really.
As for monad/powershell... it's the same story. Instead of having the shell of your choice (bash,csh,zsh,python...) with the programming language of your choice (bash,perl,python,C++...) they're still trying to force a vision on people that will probably turn out to be fundamentally flawed in some way.
>They will probably have to call it Power Microsoft Shell.
Power Microsoft Shell - PMS, would this be a description of the shell's behavior?
Doesn't appear to be a way to get a copy to look at unless you have Passport which seems to require a hotmail account. I don't have time to read a couple of dozen licensing agreements atm and it looks like if I register I'm basically signing a non-compete license with Microsoft. Not really a term that I am willing to agree to. Has anyone gone through the contracts?
/* TODO: Spawn child process, interest child in technology, have child write a new sig */
Looks like it might not be that hard to create a bash wrapper or similar (python anyone?)
I am d3matt
Yeah. The script kiddies want to manage your code. Duh.
My blog. Good stuff (when I remember to update it). Read it.
In this case, it sounds more like "those who do not understand Python".
Note, Python seems like a more appropriate comparison than Perl, because Python is interactive, while Perl is not, unless you do some funny ad-hackery. Although Perl does have that arbitary-kluginess that fits better with what I'd expect to see from MS. Actually, though, I would kind of like to see this system before passing judgement. Unfortunately, MS seems uninterested in supporting any platforms I'm willing to run, so that may take a while.
An Apple brand. It shouldn't surprise people that they know UNIX and Objects. Unfortunately, NAppleXT has spent an awful lot of time making that legacy happy. Let's hope this diminishes greatly with Leopard.
RTFM mate. This is not reinventing the wheel. It's adding a few more spokes, better tires and tougher rubber.
:|
Yet I bet it still only takes a single nail to make the whole thing useless
Sendmail is like emacs: A nice operating system, but missing an editor and a MTA.
BASH shell-scripting kicks ass. So do PERL, Python, the Korn Shell, PHP and C (and it's derivatives). I know enough about all of them to use one or more of them to do most of the tasks I need to do in the timescale I need to do them.
I've never programmed anything in any Microsoft programming environment because I've never needed to - and it would take me far too long to learn their way of doing things from scratch rather than working with what I know.
However, I know a few MS-based programmers who managed to develop the tools they need to in .NET or whatever it is they use - I'm sorry, I'm not informed enough about MS programming environments to voice any more opinions about it.
Suffice it to say, they're happy and I'm happy.
So everything is right with the world.
End of story.
Gentoo Linux - another day, another USE flag.
First of all, I would have to upgrade from Windows/2000 Professional to Windows/XP Professional. Since this costs money, I'm not terribly interested. My system has enough trouble running all the stuff I run now (2 databases, a web server, an application server, a development environment, etc. etc.). More operating system overhead is the last thing I'm interested in.
Second of all, I get to write scripts in another language that's not portable across all platforms. I've never worked in a monolithic environment, and I probably never will. Cross-platform tools are a requirement.
Third, I can do a lot of administrative programming for Windows in Perl. I imagine python and ruby have similar hooks (haven't checked). For personal productivity I run Cygwin's version of bash on this machine when I'm running Windows, and bash when I'm running Linux. Different people may want different interactive tools. Fortunately there are several cross-platform choices.
Finally, while I've heard about all these productivity gains with C# and .NET, I've not experienced it. I have .NET, C#, and Visual C++ .NET on the Windows side of my environment. What I've seen is that Microsoft makes a credible IDE. The IDE makes simple things easy, and complex things ridiculous. Transferring skills learned in the Microsoft world to any other environment is difficult at best, and pointless for the most part.
Oh - never mind - that's Microsoft's point.
Bash or Perl? How about comparing C# to something that's actually in the same league, ie. Java?
Basically, shell programming sucks. And I say this as someone who has to do a lot of it, for a living. You can work with it, but it's awkward, and error-prone, and fragile because everything has to be passed as an friggin' untyped text stream. Yes, text streams are simple, and to their credit, they do allow Unix tools to work together, kinda. And everyone knows that suckage is relative; you're brilliant as long as everything else sucks worse.
But, the *right* way to pipe data is to pass streams of objects; if you have a set of tools can do that, they will suck less. It is of course unfortunate that Monad is tied to such a proprietary platform...
Except the spokes are perpendicular to the old ones, the tires are on the inside and the rubber melts at high speeds.
They get that *nix's text based communication is a crude and outdated way of doing things
You might want to tell that to the people doing SOAP. I think there may even be a few at Microsoft.
Why not pure XML communication between programs in a shell? Then it's fully backwards compatible with older text-oriented utlities.
Of course, perhaps they are serializing the objects between processes in just this way, I have not looked at the details.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Everyone knows the name "monad" gets deprecated after a while because no-one's manly enough to use them as they are. And the Microsoft culture had a built-in aversion to going to with the "warm fuzzy thing" name, despite there being precedent.
Sigh.
the layman's guide to computer science
And how, from the users perspective, is this better than bash? What can i do with this i cant do with *nix today? Are all the various Windows applications and admin tools in some magic way now "shell aware"?
As i understand it this wont work with old apps but only new ones with support built in by the developers. I also assume this shell will have to go through the same process as the *nix shell in weeding out the security holes and bugs. Or do you really assume this is released with zero bugs from day one?
HTTP/1.1 400
I encourage you all to come kick the tires and find out what PowerShell really does/does not do. I think you'll be pleasantly surprised by its power and simplicity and might even like it. Many of us on the team have a deep background in UNIX and brought that into our work. Even if you don't like what we've done, trying it out will allow you to know enough to throw your rocks accurately. :-)
a milyId=2B0BBFCD-0797-4083-A817-5E6A054A85C9&displa ylang=en
http://www.microsoft.com/downloads/details.aspx?F
If you'd like to learn more, you can read our team blog at:
http://blogs.msdn.com/PowerShell
Enjoy!
Jeffrey Snover
PowerShell Architect
"RTFM mate. This is not reinventing the wheel. It's adding a few more spokes, better tires and tougher rubber."
Yep, and the brakes will ship in the second service pack. 8^)
Crumb's Corollary: Never bring a knife to a bun fight.
Why does .NET kick ass? I program in C# daily. It is Java, redone decently, with a couple extra features but without some of the polish that Java has. It's nice for a scripted language, but it's by no means revolutionary. Hell, Java isn't revolutionary. .NET is another iteration of a concept that has been around since the 70's, and it has the same advantages and disadvantages that all VMs have. Nothing much to see here. Give me a reason why it's the dog's bollocks, because I really am curious.
You write shell scripts in Java? Are you INSANE!?
"If you make people think they're thinking, they'll love you; But if you really make them think, they'll hate you." - DM
Things would just rock when combined with IronPython. You could easily create something like Monad/PowerShell with IronPython, which fully integrates with .Net. Heck you can even use VisualStudio to edit/debug your scripts.
Or whatever it is renamed!
/ unix/sfu/default.mspx
a milyID=896c9688-601b-44f1-81a4-02878ff11778&Displa yLang=en
/ default.aspx
In Vista, it will ship as a regular component of the Pro and Enterprise versions.
http://www.microsoft.com/technet/interopmigration
http://www.microsoft.com/downloads/details.aspx?F
Get Bash, OpenSSH, BSD pkg_tools and the GNU toolchain here:
http://www.interopsystems.com/tools/warehouse.htm
Oh, and if you want MS's fast compiler, as opposed to GNU's portable one - then this is free. Add an environment variable, and cc calls this:
http://msdn.microsoft.com/vstudio/express/visualC
"Speaking the Truth in times of universal deceit is a revolutionary act." -- George Orwell
Linux is POSIX-compliant? No it's not... it implements a number of things from the standard but is by no means compliant with it.
At least one distribution of the GNU/Linux system, called Unifix Linux, has been certified as conforming to POSIX.1.
It's a legitimate question. The security of PSH is mainly two-pronged: first, as in every other console/shell, including cmd.exe, commands and scripts can only act with the permissions that the current user has. This is the standard *nix way of doing things, and it should be far more effective in Vista once proper LUA is finally well-implemented. The other prong is a combination of security features. First, there will be no default associated file type for PSH scripts, meaning that by default, it is not possible to double click a script file and have it run, like you currently can with .BAT files. You can always create an association, but the default behavior is to instatiate the shell first, then run the script with a command-line command. Second, by default, scripts in the current director must be explicitly invoked (equivalent to not having "./" in your PATH). Third, PSH will support code signing, so that scripts must be digitally signed by a trusted publisher. This can, of course, be yourself, because you can easily enough create a cert and trust your own certificate. But it would prevent a lot of trojan attacks.
If you don't know where you are going, you will wind up somewhere else.
It might implement some interfaces/behaviour, and it is great, but it just isn't unix.
Neither is the PlayStation a "Nintendo". UNIX is a brand. Or are there material parts of the Single UNIX Spec that you're wishing would be implemented in Linux?
Not to be a heckler or anything, but I'm not convinced. I would at least like to see some screen shots before I give it a try. Secondly, what is this? An object-oriented shell? I'm a computer science student and all pro-Linux, but I would still like to know more information about this shell.
The Rapture is NOT an exit strategy.
in Unix by default you can choose from several interactive shells as well as several different programming and scripting languages. This is quite unlike the Windows approach.
O rly? The .NET framework supports numerous languages: C#, C++ with Managed Extensions, Visual Basic, J#, Perl, Pascal, Forth, Eiffel, ML, and more.
I don't recall too many things microsoft has added 'spokes and rubber' to that didn't end up causing a train wreck.
Roaming profiles
nice idea. Home directories that travel. Watch 20 users save everything to their desktop for about a month- train wreck.
Active directory.
Have fun mixing your nt domain controller with your 2000 ad box.
While your at it, don't forget to use those underscores - what, DNS? whoops!- train wreck.
Internet explorer
A web browser for windows. What a neat product. Let's give it the ability to install operating system software over the internet- train wreck.
Face it. Microsoft has been saying things will get fixed with the next version since windows 95. They've not delivered on that yet as far as I can tell. More features get added, but nothing gets fixed, and the reason is because it makes for good marketing. People keep waiting though, and hoping, and spending, and that's all that counts when marketing is your drive.
Join the Slashcott! Feb 10 thru Feb 17!
If the quality of this product matches the quality of Microsoft's other 1.0 products, then "It's so bad" is about right.
I'm an avid Python, PHP, Perl, Ruby, and C# programmer.
.NET you can switch from C# to C++ to J# and still use the same common libraries! And if you already know C, then learning C# is a piece of cake. Same for Java and J#. Your "learning curve" comment is totally unjustified as far as I'm concerned.
Ok, those *nix languages are all fine (I particularly am fond of Python), but C# is definitely a very nice language. Give credit where credit is due.
I can tell you from personal experience that I haven't found development/debugging tools in any of those other languages that compare to Microsoft's.
And as for your comment about the learning curve, I totally don't get that. So you have no problem with the learning curve involved in learning Perl, Python, Korn, PHP, and C and yet you have a problem learning c#? Those languages don't even share the same libraries; at least with
My point exactly. He was comparing things that don't filful the same goals.
I know its hard to accept microsoft did something good, but as someone who has been using betas of this for months, I must say it is pretty darn slick.
Think of how great your linux environment is, becuase you can easily chain together applications that pass textual data between each other... This is the same idea, except we can now pass complex objects and custom data types as well.
To solve the problem of how to 'display' an object, each object type can have an xml file describing how to display it in a text environment.
Big ones, small ones, some as big as yer 'ead!
Give 'em a twist, a flick o' the wrist...
Hands in my pocket
Apple is already dropping the "Power" nomenclature (ie, PowerBooks became MacBooks). Redmond's photocopier is too slow. :^)
Where do you see ANY indication that this will cost you $?
"System requirements: Windows XP or later". A lot of Slashdot readers still use computers purchased before January 2002, when PCs started coming preloaded with Windows XP. They would have to shell out a not insignificant amount of money to upgrade to Windows XP (for desktop machines) or Windows Server 2003 (for servers). See thetoastman's comment to this article.
Pronounced "PSSSSH!" of course.
Windows PowerShell RC1 (for .NET Framework 2.0 RTM) x86
f 14c-8009-43ad-b953-1b18609cf14c/PowerShell_i386.zi p
http://download.microsoft.com/download/e/8/c/e8cc
I hope that helps.
You might look into Cygwin and rxvt.
...so people don't call it NoNads?
I'm the urban spaceman babe, but here comes the twist... I don't exist
There is the beanshell.
I have never used it but I think it came with Forte and Netbeans in earlier version in some sort of java desktop(not gnome). My guess is the desktop and beanshell terminal were part of the failed JavaOS that was ported to the javavm from sun engineers who missed it.
After playing with StringBuilder and the various string classes in java.utils, I thank god I don't have to write any shell scripts in java! What a mess and I feel sorry for companies like Catapiller who write scripts in c++ instead of shell scripting in order to follow standards on one langauge. I dont hate java but string handling is not its strong point compared to other languages.
http://saveie6.com/
Most lisp implementations are interactive. Also, a lot of features from modern scripting languages seem to be a knock-off of lisp features. Python is a good example with its (soon to be removed) lambda functions.
---- "XML is like violence. If it doesn't fix the problem, you aren't using enough."
Couldn't they have picked a different name? I've been using PowerShell on Linux for years now. It's a terminal emulator for X11 (like xterm) and is the first result on Google for the word PowerShell. Now a terminal emulator isn't exactly the same as a shell, but I could see some confusion occurring as a result.
Can I use ls to get a file listing yet?
Touché; however, that analogy would still apply to all wheels [shells] ...
PGP KeyId: 0x08D63965
sorry. (wait, it's microsoft, why am i apologizing?)
first it's slow. slower than it takes cygwin to load. second, it's too much typing. all the short form aliases are nice, but seriously, remove-item for rm? maybe it's just me, maybe it'll grow on me, but i doubt it. plus, they really should do a google search before coming up with names, the first result for powershell is http://powershell.sourceforge.net/ (the thought did cross my mind)
Supplies!
Am I the only one here who has spent weeks of work time writing batch and vbscripts to automate operations on Wn2k Servers and networked Windows clients? If this works as advertised (and if I was still running Windows) Id use it.
Its a step in the right direction and anything that extends an admins ability to write effective scripts is a bonus. After all whilst it may have taken me a few days to write some of the more complex scripts that we used it would have taken longer to write an application in VB or C to do the same job.
(BASH is my shell of choice, its because I have an unhealthy obsession with grep...)
nb Not spell checking this post - its too early
One wonders why they chose to change the name... the open source/gnu movement would have called their copy Gonad!
It's Perl the language, or perl the interpreter, there is no PERL, it's not an acronym.
Your hair look like poop, Bob! - Wanker.
You can run cmd.exe in rxvt or something if you don't like the default windows terminal. I would assume the same is true for this.
Although I haven't played with it, I've read a bit about this shell, and there was something that bothered me about it, and I finally just put my finger on it: this thing was designed by programmers.
.Net libraries are vast and complex... looking at some of the sample msh scripts, I understand how a windows programmer would think they were an amazingly powerful simplification, but damn there's a lot I have to know to get basic things done.
.Net code in my life, I see almost nothing familar when I read .msh scripts. It appears to require an entirely new body of knowledge to do simple things, and bears little or no relationship to the interfaces and paradigms I use day to day. Yes, I know those interfaces are graphical. Seems to me there's bound to be some way to do it (or would be if there were any logic or consistency to the organization of the everyday administative interfaces in Microsoft's products).
I know that the line between "programmer" and "system administrator" is often blurry. And the line between "shell" and "interactive script interpreter" is as well. But when you start requiring people to understand concepts like objects (which may seem like old hat to a programmer), you're already presuming a relatively sophisticated understanding that an "average user" has no grasp of. And the
Ye olde csh and sh are great because they provide a simple way to put programming logic around the set of operations users spend their entire day in and are already familiar with. The learning curve is very incremental: you can master the basic UNIX commands, and then start to add in variable subtitutions (!$ anyone?) and loops (foreach) and such as needed.
In other words, the jump from basic UNIX user knowledge to simple scripting is very small, because the scripting is presented in *exactly* the same context and using the syntax the user does day-to-day work in. But as a competant windows admin who doesn't know VB and hasn't written a line of
Don't get me wrong... I understand that the goal of an intuitive scripting tool is in many ways at odds with providing a rich and powerful development environment that can complete with something like perl, but I had hoped there was something a little closer to "ground level" coming.
-R
Virtually communication under Unix is text-based, no matter it's human-to-program or program-to-program. The CLI output/input is text based; the configuration file is text-based; the log is text-based. I think the reason is that most of the stuff is originally designed for human to read: the thing you pipe to another program is initially intended to be examined by human; the configuration and log is also built to allow a human to read, interpret and change them, manually. However, when this human-oriented (or geek-oriented) text is used to glue different programs, it means extra work to parse them. Thanks to awk and the standardization on standard programs like ps, so far, so good.
We actually have already seen troubles with this approach. How many programs have tried to override your xorg.conf/sources.list/sshd_config because they don't have a nice way to just insert a few records and gracefully remove it later? Wouldn't it be better if the configuration system provides API for other programs and, more importantly, scripts to interact with it and a GUI/CUI/curse for human to change it, just like what gconf2 has done?
Maybe it's time for us to put more OO-friendly stuff into UNIX. Apple/OPENSETP has been along the OO-based API road for like 10 years, and MS is trying essentially the same thing with .NET. It's true that we have a lot of OO goodies on UNIX like python and ruby. But the problem is that they are at a higher level, and therefore if you want a python program to interact with ruby, you have to dump your object into text and parse it back into object representation at the other end. It would be nice if we could have some lower-level object layer or simply standardize an object serialization scheme.
It's true that intercommunication with objects is more efficient and flexible for computer programs.
Are you saying if you use linux, you are running one of the early 2.4 kernels?
Why is it OK for people to constantly upgrade their kernels (or hell look at MacOS X and having to pay to get upgrades), but it's not OK for Microsoft to do so?
Why does the entire world have to look like a scripting language from an OS designed four decades ago?
Wheels -- thousands of years old. Still work.
Fire -- hundres of thousands of years under human control -- still works.
And you -- still typing after all these years, over a hundred now, since the invention of the keyboard. Still using fonts, for pete's sake, on graphical displays, invented before UNIX, along with mice, still using silicon (60 years old) and rust (thousands of years old) and electricity, back before Mr Franklin's experiments with kites 250 years ago, still using bits for storage as characters, processed by computer instructions, over 50 years old. Why haven't you graduated to something modern?
Infuriate left and right
Actually, if you know C++ or java, then C# is a peice of cake. I would hate to move to C# from a background in only C.
I program in C# daily. It is Java, redone decently, with a couple extra features but without some of the polish that Java has.
Just out of curiosity, specifically what polish does Java have over C# in your eyes? One of the things I've always liked about C# over Java is that to me it seems more polished, so I'm just curious what makes you think the opposite.
Perl - $Just @when->$you ${thought} s/yn/tax/ &couldn\'t %get $worse;
I stand corrected. C++/Java is actually more appropriate to compare to C# ... that's correct. That's what I intended to say :-)
At least in XP Pro, tab completion is on by default. In fact, I don't see a way (other than reghacking) in my brief search to turn it off. I believe it was in 2K too, but I'm not sure about that one.
Roaming profiles
nice idea. Home directories that travel. Watch 20 users save everything to their desktop for about a month- train wreck.
PSU uses roaming directories. They (almost always*) work fine. They need a third-party tool to enforce a 20MB quota on desktop size, and have actually I think completely changed the setup so that the desktop gets loaded from a network path so that they don't even need that.
If I were making a network with Windows machines in which people moving between computers was common I'd say there's no other way to approach things than roaming profiles. It's WAY too useful.
* There's been a couple hiccups in my 4 years here, but they consisted of it just taking an incredibly long time to log on.
Face it. Microsoft has been saying things will get fixed with the next version since windows 95. They've not delivered on that yet as far as I can tell. More features get added, but nothing gets fixed, and the reason is because it makes for good marketing.
I'll grant you that there's a lot of empty promises and vapourware. (WinFS anyone?)
However, to say that the quality of Windows 95 is anywhere near the quality of 2K or XP is completely and utterly ridiculous.
Microsoft have included object-based scripting for a long time (the Wi ndows Scripting Host).
d e/sas_wsh_qlcc.mspx?mfr=true
.NET-based scripting shell.
http://www.microsoft.com/technet/scriptcenter/gui
But it's pre-.NET (you can do COM with it for instance).
I don't know if they also provide a
Try TweakUI on Microsoft's PowerToys for Windows XP page.
Mighty useful tool, if I may say so.
Not Buzzword 2.0 compliant. Please speak english.
Cloned within a month? Sorry to rain on your parade but if you wanted an object shell, you could have been using one for more than a year already. Take a look at Object Shell which has been under development since October 2004. It's written in Python and uses Python objects.
Cheers,
Toby Haynes
Anything I post is strictly my own thoughts and doesn't necessarily have anything to do with the opinions of IBM.
Why is it going to debut with Exchange 12?
Are they expected email admins to go nuts creating new scripts now? Seems like it's not exactly their target audience...
Examples 3
Find the total bytes used in the current directory
The example is a 6 line script in ksh, or, a 3 step pipeline using awk to do the following:
du -b .
Hmmm...
Example 5
Find out when a process is no longer running.
The example shell script is 11 lines long, features two tests and two pipelines into variables to do the following:
while
ps -e | grep application ; do
sleep 10
done
echo "not running no more"
These are just two - I can see simple little pieces of shell that are trivial to make work on any modern posix system for all the examples provided, except for the laughable
Example 6
where they (Microsoft's rather amazing ksh coders) say there's no way in Unix to see what version of the code is running. Well yes, it's not the shell's job to keep track of that, but anything written using gnu getopts or written by anyone who actually keeps track of versions uses '-v' or '-V' to display that information.
The so-called examples page I linked to is really a page that is designed to convince Windows-only people that they can now have the power we have been used to for 20+ years. Anyone who actually has written any scripts bigger than "echo 'Hello World!'" would be laughing at their examples of "Unix Shell Scripts".
Although probably someone already replied something along these lines, i can't resist:
/."
"When MS-DOS was first written, there was no such thing as directories...necessary to pass arguments to commands, and the natural way to do this was to distinguish them from paramters by pre-pending a character. MS chose to use
This seems the typical M$ fanboy who thinks M$ invented everything in the IT business, from directories to operating systems, to GUIs to spreadsheets.
Well, yes, both directories and the convention to use "-" switches to pass command-line options to programs already existed in Unix. And Bill Gates the man was very aware of them and even used vi back them. They purposefully introduced annoying new conventions, like "\", "/" for switches and "dir" rather than "ls", while some other things remained the same such as "cp", "more" etc...
However, since DOS was actually created by another company, it may not be the fault of M$. Just maybe...
I don't feel like it...
Its interesting to see the windows mindset put into action in a shell like fasion.
FTA:
$ ls -l | awk '{ tot += $5; print tot; }' | tail -1
This reduces the complexity, but requires specific knowledge of a new language, the language that is associated with the awk command.
The MSH loop is similar; each file in the directory is needed, but it is far simpler as the information about the file is already retrieved:
MSH:
MSH> get-childitem | measure-object -Property length
Yes, but using awk like this will work for any similar problem only requireing you to think about the format of the output, whereas this other way requires specific knoweledge of possible properties. I can see some advantages, but don't assume its better because you dont need to learn a new language, cause you basically do.
I think you underestimate just how much I just dont care.
Ok. I will be rated troll like last time, when I said that Debian is a very good platform for customized distributions (it was before widespread successes of ubuntu and mepis).
I see that both families of systems - the Unix heritage (Linux, Solaris, BSD less so - they are more true to the original Unix, maybe with exception of dragonflyBSD and Darwin) and the VMS heritage (I mean Windows here) are converging. The aim seems to be a kind of thread based, light-kernel operating system, that can be easily parallelized/or distributed, with object oriented interface at both Kernel and User levels. The Unix was taken in this direction by Plan9, Mach and NeXT.
Think I am a loony? look here: Plan9 shell introduction.
Unix shell (text) ---> Plan9 shell (arrays of strings) --> Microsoft shell (objects).
I'm also certain that there will come time when Windows will become Open Source, like Solaris. Not that I like Windows or whatever but Open Source is more functional, so the convergence process will also take Windows in that direction.
You can defy gravity... for a short time
Wow. It took them a long time to copy AppleScript.
GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
I am working on a unix like shell for Windows that includes a more modern UI. If you are so interested check out www.undeadshell.com. I am still developing it so its a little rough around the edges.
Technically, yes, though "Practical Extraction and Report Language" has been widely suggested as a backronym.
Thank God. It's why I use it. Sorry, but cygwin's a little idiosyncratic, so until Redmond releases a real Bash on XP, this is it.
PSU uses roaming directories. They (almost always*) work fine. They need a third-party tool to enforce a 20MB quota on desktop size, and have actually I think completely changed the setup so that the desktop gets loaded from a network path so that they don't even need that.
If I were making a network with Windows machines in which people moving between computers was common I'd say there's no other way to approach things than roaming profiles. It's WAY too useful.
Roaming profiles are based on the idea of copying the profile arround
this means people can work offline but as the GP has stated it gets totally impractical rather quickly.
the soloution at least for desktops is to just load stuff directly off network shares, giving up the ability to work offline but saving a LOT of network load. This is certainly achiveable but it means a LOT of work manually reconfiguring applications and the OS to move stuff out of the profile and onto network drives.
note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
i believe it is on for filenames but not directories... or vice-versa.
And yes TweakUI will let you set it to both easily.
It's not even clear that you could create something similar for *NIX given that MSH is build on .Net so actually has lots of Objects to script whereas an Object-based shell and *NIX would be lacking any Objects to script. Actually, UNIX is an OO system in a very limited fashion, be it one with only one interface: File.
I asked James Gosling whether the Solaris team at Sun was doing anything with Java to add MSH-like capabilities to Solaris. To make a long answer short, he basically said "no".
Many of the high-order functional programming aspects of MSH remind me of a UNIX shell from around 1990 called "Es". You can read about it here: Es: A shell with higher-order functions.
If you knew anything about the history of NT, you'd know it has changed many things and still IS changing many things to make it more unix-like, so obviously they do need to learn from unix.
They implemented it for the sake of being able to claim compliance in case big clients had specified that, but it wasn't a real effort to comply in anything but name, and so it has been abandoned now:
; en-us;308259
http://support.microsoft.com/default.aspx?scid=kb
http://www.jpsoft.com
I've had aliases, tab-completion, and much more ... since the 1980s I believe. Objects are nice, but I never use cmd.exe anyway!
-Clio
Karma: Bad (mostly from not giving a fuck)
Blog: http://clintjcl.wordpress.com
I also think VMS and Microsoft have more of a connection in developer-land than UNIX and Microsoft, and it does sometimes show.
My understanding is that M$ hired some VMS developers to be part of their Windows NT kernel team, which is why NT 3.51 was so stable (for a M$ OS). It started going to pot with NT4, as M$ moved away from the heavy VMS influence.
Network devices can AFAIK not be reached through /dev. (On Linux that is... I think it is true of the BSDs as well.)
HAND.
Microsoft must have many people covering slashdot who have somehow gotton moderator points, for this the parent's comment to get modded 'troll' and 'offtopic'. I just ran into an obvious microsoft shill over on bugtraq. I suppose if I had as much cash as they did, I'd do the same thing. I wonder what the job title is?
I guess the parent must have struck a nerve...
"We are all geniuses when we dream"
- E.M. Cioran