Slashdot Mirror


Microsoft PowerShell Goes Open Source and Lands On Linux and Mac (pcworld.com)

Microsoft announced on Thursday that it is open sourcing PowerShell, its system administration, scripting, and configuration management tool that has been a default part of Windows for several years. The company says it will soon release PowerShell on Mac and Linux platforms. PCWorld reports: The company is also releasing alpha versions of PowerShell for Linux (specifically Ubuntu, Centos and Redhat) and Mac OS X. A new PowerShell GitHub page gives people the ability to download binaries of the software, as well as access to the app's source code. PowerShell on Linux and Mac will let people who have already built proficiency with Microsoft's scripting language take those skills and bring them to new platforms. Meanwhile, people who are used to working on those platforms will have access to a new and very powerful tool for getting work done. It's part of Microsoft's ongoing moves to open up products that the company has previously kept locked to platforms that it owned. The company's open sourcing of its .NET programming frameworks in 2014 paved the way for this launch, by making the building blocks of PowerShell available on Linux and OS X. By making PowerShell available on Linux, Microsoft has taken the skills of Windows administrators who are already used to the software, and made them more marketable. It has also made it possible for hardcore Linux users to get access to an additional set of tools that they can use to manage a variety of systems.

400 comments

  1. Heu.. ???? by ls671 · · Score: 5, Insightful

    Embrace, extend and extinguish ???
    Link:
    https://en.wikipedia.org/wiki/...

    --
    Everything I write is lies, read between the lines.
    1. Re:Heu.. ???? by mlw4428 · · Score: 2

      This typically works when the MS product isn't being released on multiple platforms and open sourced. Obviously MS could always build closed source extensions, but there'd be no point. MS doesn't want to stay in the desktop OS market and with the failure of its mobile OS and their success with Office365, it seems like MS will start moving out of providing consumer level operating systems in favor of hosted solutions that enable them to charge reoccuring subscription fees. As consumers buy less and less "computers" and more and more tablets and smartphones, MS may simply have a long term plan to exit their OS product in a decade or two.

    2. Re:Heu.. ???? by Pascoea · · Score: 0

      I think they are changing it up. infect, extend, extinguish.

    3. Re:Heu.. ???? by Bobfrankly1 · · Score: 3, Insightful

      Ugh, PS is horrendous - especially trying to learn the f***ed up way it works.

      But on Windoze hosts you have nothing else command line wise to manage AD and Exchange (mostly what I punish my self with).

      It's object oriented. If you don't have a even a basic understanding of how objects work, of course it's going to be confusing. Once you break past that wall however, you find a well documented and sane terminal. Sadly many think "different" = "bad".

    4. Re: Heu.. ???? by ArmoredDragon · · Score: 1

      The thing I hate about PowerShell is the fact that its command set is so damn enunciated. But on the plus side, it's object oriented so there are often much shorter ways of manipulating text that don't require some gnarly sed, awk, or grep command syntax.

      Overall I think I'm starting to prefer PowerShell over bash, but it still has a few inconsistencies that are hard to get over, like how in a script you have to preface a regular command with an ampersand whereas doing the same thing in a regular interactive shell doesn't need one.

    5. Re: Heu.. ???? by ArmoredDragon · · Score: 1

      Though if it's open source, it's hard to take it away so the extinguish part may not be possible. It really depends on the license.

    6. Re: Heu.. ???? by Jaykul · · Score: 2

      MIT -- no extinguishing that https://github.com/PowerShell/...

      --
      Anger is never without a reason, but seldom with a good one. -- Benjamin Franklin
    7. Re: Heu.. ???? by bondsbw · · Score: 1
      --
      All my liberal friends think I'm a conservative, all my conservative friends think I'm a liberal.
    8. Re:Heu.. ???? by ooloorie · · Score: 1, Redundant

      I understand how objects work, I still don't like PowerShell.

    9. Re:Heu.. ???? by Somebody+Is+Using+My · · Score: 4, Insightful

      No. Well, yes, but not in the way you think.

      This isn't about Microsoft trying to "conquer" Linux. Increasingly Microsoft is less interested in maintaining operating system dominance. The OS is not a growth market, and not one that people really care too much about; they use whatever their computer (or device) comes with. Instead, Microsoft is betting big on becoming an OS-agnostic software-as-a-service company. That isn't to say that they are entirely abandoning Windows (and knowing Microsoft's legendary inter-departmental rivalries, you can bet the Windows team is fighting the rest of the company to keep their product relevant) but long-term I wouldn't be surprised to see all of Microsoft's products available on Linux, MacOS, IOS, Android and any other OS they can reach. It - not Windows dominance - is where Microsoft believes the company's future is.

    10. Re:Heu.. ???? by MightyMartian · · Score: 5, Insightful

      Overly verbose, syntactically complex, and most of all just astonishingly slow. I use it because there's no real alternative on Windows, but every time I have to code in PowerShell, I just think "So close to bash, but yet so far away." I cannot imagine anything that would compel me to use Powershell on a *nix system.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    11. Re:Heu.. ???? by MightyMartian · · Score: 4, Interesting

      What I particularly dislike is how it automatically filters output, and you have to use arguments or other applets to give you fuller output. It just strikes me as being the exact opposite of how any particular command or script should work.

      And objects, big fucking deal. I've been using Bourne variants for a quarter of a century and never thought "Boy, I wish I had classes".

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    12. Re: Heu.. ???? by Anonymous Coward · · Score: 0

      Its also poo oriented, flaky at best

    13. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      So, exactly, "Embrace, extend and extinguish."

    14. Re: Heu.. ???? by JediJorgie · · Score: 1

      ROLF! It is being used to manage tens of thousands of Exchange and SQL servers around the world. Yea, it must be flaky.

      Careful your ignorance is showing.

    15. Re: Heu.. ???? by silentcoder · · Score: 4, Insightful

      Considering how flaky exchange and SQL server is, that's no endorsement at all - after all, when the things it manages are utterly unreliable pieces of shit, whose going to NOTICE if the management tool also sucks ?

      --
      Unicode killed the ASCII-art *
    16. Re: Heu.. ???? by Anonymous Coward · · Score: 1

      ROLF! It is being used to manage tens of thousands of Exchange and SQL servers around the world. Yea, it must be flaky.

      Tens of thousands of servers around the world! be still, my heart!

      I hope at least you convinced that ROLF person, whoever that is.

    17. Re: Heu.. ???? by ls671 · · Score: 2

      Hmm... how were those servers managed before powershell?

      Hint: I often encounter Exchange and SQL servers admins that don't even know about powershell, they are still using cmd.exe.

      Admins: "Powershell? What is it? I would have to install it..."

      Me: "see that rotated M icon on you taskbar, that's powershell..."

      Admins: "Thanks! how does it work?"

      --
      Everything I write is lies, read between the lines.
    18. Re:Heu.. ???? by denis-The-menace · · Score: 2

      PowerShell is a way to force Scripters to become .Net programmers.

      There are many limitations and bugs with PowerShell commands and if you want it to work on all win boxes you need to use .Net stuff.

      And when .Net won't do, use pinvoke

      --
      Obama's legacy: (N)othing (S)ecure (A)nywhere and (T)error (S)imulation (A)dministration
    19. Re:Heu.. ???? by Rob+Y. · · Score: 4, Interesting

      Umm, desktop systems and apps may not be the growth business they once were, but they still make Microsoft billions. It's not that they want out of those businesses - it's that they're trying to keep up with the overall industry move to the cloud. Not that it would be a bad idea for Microsoft to start basing their cloud operations on Linux - assuming they could get more out of their hardware that way. Maybe they really are thinking along those lines, and want their software to work there - for their own purposes. That'd be pretty forward-looking.

      Of course, Occam's Razor would favor locking admins into their Windows-specific toolset as the explanation...

      --
      Posted from my Android phone. Oh, I can change this? There, that's better...
    20. Re:Heu.. ???? by The-Ixian · · Score: 3, Interesting

      Personally, I love PowerShell.

      I also love Perl.

      In a lot of ways, the two are syntactically similar.

      Being a long time Perl guy, I had no problem picking up PowerShell.

      --
      My eyes reflect the stars and a smile lights up my face.
    21. Re: Heu.. ???? by Bobfrankly1 · · Score: 1

      Hmm... how were those servers managed before powershell?

      Hint: I often encounter Exchange and SQL servers admins that don't even know about powershell, they are still using cmd.exe.

      Admins: "Powershell? What is it? I would have to install it..."

      Me: "see that rotated M icon on you taskbar, that's powershell..."

      Admins: "Thanks! how does it work?"

      Those aren't Admins. Those are Microsoft Support Phone liaisons with elevated permissions. Thier job title may contain "Admin", but common sense screams otherwise.

    22. Re:Heu.. ???? by yuriklastalov · · Score: 1

      What? You don't create an entire class hierarchy for bash scripts? HAVE YOU NEVER HEARD OF CODE REUUUUUUUUUUUUUUUUUUUUUSE?!?!?!

    23. Re:Heu.. ???? by Dracos · · Score: 5, Insightful

      After 20 years of MS trying to kill the shell, they relented and decided the Windows platform needed one. But in typical MS style, they asked themselves "How can we make a shell that's notably different from everything else that already works?" and someone piped up "OOP is the Way of Everything." Welcome to another episode of Redmond: Not Invented Here Syndrome.

    24. Re: Heu.. ???? by MightyMartian · · Score: 4, Informative

      Having administered Exchange from Exchange 97 to Exchange 2010, I can confirm that it's a pretty shaky system and can throw up some huge gotchas on occasion. It's also a bloated nightmare. I'm not sure if there's an upper limit to the resources that Exchange would gobble up.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    25. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      It's like they took the worst syntax features of every scripting language out there, invented a few of their own, mashed them all together, and called it a day.

    26. Re:Heu.. ???? by Dracos · · Score: 2

      I agree. I think MS is slowly abdicating development to *nix/FOSS so they can get it off their plate. They don't want to develop standalone software products anymore, they want to move everything to SaaS and more or less follow IBM's footsteps. But it'll take at least a decade, especially to get their enterprise customers (who are the only ones MS understands and cares about) on board for that transition. I bet in a few years we'll see OEMs actually be more allowed to preinstall other OSes. There may not be a consumer-level Windows in 10 years.

    27. Re: Heu.. ???? by ls671 · · Score: 4, Interesting

      My brother is responsible to hire Windows admin at his university. Believe or not, he actually post looking for Unix admins! Based on previous experience, he says that if a guy can admin Unix, he will be better administering Windows then a Windows only admin.

      --
      Everything I write is lies, read between the lines.
    28. Re: Heu.. ???? by Bobfrankly1 · · Score: 1

      My brother is responsible to hire Windows admin at his university. Believe or not, he actually post looking for Unix admins! Based on previous experience, he says that if a guy can admin Unix, he will be better administering Windows then a Windows only admin.

      Considering the level of Windows "admins" I've encountered over my years, I'd say your brother may be on to something :P

    29. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      The problem is that you're looking a the output as text. But output is OBJECTS. So you can get whatever info you want after the fact, regardless of the default display fields. Occasionally you have to do a "-properties *", but that's usually only done on objects that have a huge number of properties so you don't default to pulling large amounts of data.

    30. Re:Heu.. ???? by chispito · · Score: 5, Informative

      And objects, big fucking deal. I've been using Bourne variants for a quarter of a century and never thought "Boy, I wish I had classes".

      You never wished for an object-oriented shell because you are already proficient in Unix shells, and it is clear you have only ever tried to make PS fit the Unix paradigm.

      What I particularly dislike is how it automatically filters output, and you have to use arguments or other applets to give you fuller output.

      Only the view in the console window is filtered by default. If you send the pipeline to a csv or xml, you'll get everything. It filters the console view because there is far more and more complex data being send along. It is not Unix, the pipeline is not compose of flat lines of text.

      --
      The Daddy casts sleep on the Baby. The Baby resists!
    31. Re:Heu.. ???? by thegarbz · · Score: 3, Funny

      HAVE YOU NEVER HEARD OF CODE REUUUUUUUUUUUUUUUUUUUUUSE?!?!?!

      Of course I have. Find code you want to re-use, copy it, and paste it into your new script. Code reused.

    32. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      So in other words, a lot like systemd logging. To get anything useful out of it, you have to query the object.

    33. Re:Heu.. ???? by LostMyBeaver · · Score: 2, Interesting

      While I'm not a huge fan of powershell, I've spent a considerable amount of time coding in it because there's simply no point to using stupid utils like puppet and chef when 90% of what you do is call powershell anyway. After all, install Windows... powershell... add user... powershell... install Hyper-V... powershell... install WDS.... powershell. So why the hell would I bother with something else when I have to use it anyway?

      Now that I've figured out object orient programming, exception handling, type definitions, error management, etc... I think that PowerShell is pretty nice. It's an ugly language, but it's the only language I know of that is designed to handle automation so nicely. Whether I'm automating FreeBSD or Exchange Server, PowerShell is very capable. What's even better is that the help online is excellent. I almost never find myself wondering "Gee, I wonder how to do that" and that's been the truth since the first day of using it.

      As for other shells... bash and other bournes are nice, but they handle data like shit and you spend most of your time coding new utilities for almost everything you need to accomplish.

      I think that existing shell paradigms weren't good enough for handling these tasks. Most shells don't have the ability to call libraries without additional utilities. Most shells don't have the ability to employ data structures. PowerShell while somewhat grotesque to look at is really quite powerful in that sense.

      I'm looking forward to powershell remoting linux.

    34. Re:Heu.. ???? by MightyMartian · · Score: 2

      I don't want the results filtered even on stdio to a command window. Yes I know they're not filtered if redirected to some other stream, but the fact that it filters it for the command prompt is absurd, and often renders the output useless unless you throw in the flag. How is "c:\somedir\someotherdir\importantf..." useful?

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    35. Re:Heu.. ???? by Gadget_Guy · · Score: 1

      Embrace, extend and extinguish ???

      Seriously, that is utterly moronic! Why do they need to embrace their own product? Surely they could easily extend PowerShell without making it open source - BECAUSE THEY ALREADY HAVE THE SOURCE! And why would they extinguish one of the core part of Windows? And how could they if they made it open source?

      You simply saw the name Microsoft and just jumped to the old, out-of-date triple-E meme that has absolutely no relevance to the topic. Pathetic.

    36. Re: Heu.. ???? by LostMyBeaver · · Score: 1, Interesting

      Odd... I tend to find that both are pretty awful and prefer to hire people with computer science education and programming experience with a solid understanding operating design, protocols and encryption. There are a lot of people out there with that skillset and what's best is that they generally don't care what language they are using for scripting but instead solve the problem, document the solution and develop deployment scripts for changes as well as rollback scripts and unit tests. Oh, and if there's a problem with the API they are calling, they write a bug report describing it and providing a reproducible test case to ensure MS can easily fix it.

      Never hire IT guys if you can hire computer scientists instead.

    37. Re:Heu.. ???? by LostMyBeaver · · Score: 1

      Automating Windows remotely via Powershell remoting which would localize error messages and exception handling?

    38. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      Only the view in the console window is filtered by default. If you send the pipeline to a csv or xml

      So different output depending on invokation method? Good for an interactive prompt, a bit less good if you try to automate your workflow and realize nothing behaves as expected once its run as script and have to double check each step in the script for the ones that behave unexpected.

    39. Re:Heu.. ???? by tnk1 · · Score: 0

      Powershell is head and shoulders better than anything they had for Windows Server before. The good reviews for it from Windows admins are well deserved.

      It still sucks compared to the bash shell, or almost every other Unix shell that has been in use over the last decade or so.

    40. Re:Heu.. ???? by Bobfrankly1 · · Score: 1

      I don't want the results filtered even on stdio to a command window. Yes I know they're not filtered if redirected to some other stream, but the fact that it filters it for the command prompt is absurd, and often renders the output useless unless you throw in the flag.

      Sometimes what we need is just a quick glance at the status, and that's what that "absurd" filtered view provides, a glance. Often times that glance is good enough, and I'm glad I didn't get 15 pages of scroll for 10 items. It's one of the compromises of a shell that's also a scripting language. Also, doesn't "ps" on linux do the same thing? You have to throw on additional switches if you want to see ALL the processes or ALL the fields.

      How is "c:\somedir\someotherdir\importantf..." useful?

      If you don't get how all that data is useful, you've never needed it. Congrats, you've got it easy. For the rest of us, that amount of data in invaluable, because we can easily filter down to what we need.

    41. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      "...MS trying to kill the shell..."

      Wow, is this ever dumb. Like, mega-dumb. MS has never tried to "kill the shell", they've had shell services since DOS 1.0. The worst thing you could accuse them of was neglecting the shell for a lot of years. But they never tried to kill it.

      You know who tried to kill the shell? Apple. MacOS, the original before OSX, had no shell. Apple even bragged about it, how MacOS was graphical right to the core, so graphical that they didn't even have a shell. It was a way of differentiating themselves from Microsoft at the time.

    42. Re:Heu.. ???? by Gadget_Guy · · Score: 1

      What I particularly dislike is how it automatically filters output, and you have to use arguments or other applets to give you fuller output. It just strikes me as being the exact opposite of how any particular command or script should work.

      No, it is not the opposite. It's giving the information that is the most usable and easily read by a human. Even *nix utilities do this. Hell, type "ls" and you don't get the file sizes and dates; you have to add -l to get those details.

      And objects, big fucking deal. I've been using Bourne variants for a quarter of a century and never thought "Boy, I wish I had classes".

      That just shows that you are stuck in the mindset of manipulating text outputs of commands to find the information you need. It certainly shows a lack of imagination that there could be anything better. What it doesn't show is that there is anything wrong with the concept of PowerShell simply because you don't get it.

      When you start writing scripts that make web requests that you can read the value you want without having to do clunky regular expressions, then directly updating specific cells in a spreadsheet (including with formatting) then you realise just how much easier this is with an object-based system. Or how about writing your own software as a .NET library so that the same code can be used for manual viewing in a .NET application or with powerful scripting with PowerShell with no additional effort.

    43. Re:Heu.. ???? by Darinbob · · Score: 1

      Well clearly, if you need to talk to Windows DLLs on a Unix system it would come in handy!

    44. Re:Heu.. ???? by Jeremiah+Cornelius · · Score: 1

      LOOK! SHITTY .NET RUBY!

      Seriously. It's MS still finding binary blobs somehow preferable to I/O streams of plain-text. It's the devil's work.

      --
      "Flyin' in just a sweet place,
      Never been known to fail..."
    45. Re:Heu.. ???? by Jeremiah+Cornelius · · Score: 1, Troll

      It is SO "systemd". More of the binary is better bullshit.

      If you need a .Net runtime for your shell, you are f*cked.

      Since every object type that you'd want to build for *nix systems already exists as Perl or Ruby code, that can be accessed through C-PAN or Git, I really don't see what problem this solves. The problem of how to force a .Net runtime on every machine in existence?

      --
      "Flyin' in just a sweet place,
      Never been known to fail..."
    46. Re:Heu.. ???? by jpbelang · · Score: 1

      In my opinion, you are absolutely correct. The thing that makes me go ugh every time I have to teach it, is that I can explain the unix pipeline in 10 minutes. Powershell takes much longer than that for very little real benefit.

      --
      JP http://www.wearerite.com
    47. Re:Heu.. ???? by Jeremiah+Cornelius · · Score: 1

      It is not Unix, the pipeline is not compose of flat lines of text.

      Exactly. You elegantly state both why it's unwanted AND why it is unsuitable for Unix-style systems.

      --
      "Flyin' in just a sweet place,
      Never been known to fail..."
    48. Re: Heu.. ???? by Antique+Geekmeister · · Score: 2

      This has been true for decades. The forced familiarity with lower level tools such as DNS, DHCP, LDAP, or CIFS to manage services in a standards based and standards compliant way provides deeper knowledge and ability to fix issues than a typical Windows of equal experience brings to the task. Too much of Windows admin knowledge is often transient, learning specific button clicking interface patterns for certain tasks, with little review of _how_ things work or how the configuration data is stored The simple fact that Active Directory published "export" of their configurations bear only a casual resemblance to the actual data used is not something they are trained to appreciate.

    49. Re:Heu.. ???? by Gadget_Guy · · Score: 2

      After 20 years of MS trying to kill the shell, they relented and decided the Windows platform needed one.

      What on Earth gave you the impression that Microsoft had been trying to kill the shell?

      For over 20 years they have made improvements to scripting from COMMAND.COM to CMD.EXE when we all moved to Windows NT. They added the Windows Scripting Host in 1999 with a large number of languages supported. Ten years ago they came out with PowerShell, which they have implemented as a central component so that some of the configuration programs are simply just a front-end to PowerShell (to teach people the scripting ways of controlling their server software).

      They have also implemented the Server Core installation option of Windows Server, and the user interface is just a command prompt. No taskbar or explorer shell. None of these things are Microsoft trying to kill the shell.

      PowerShell is not a result of a "not invented here" syndrome. If they had just made a copy of bash, then it would not done nearly as much as what PowerShell achieves. Microsoft didn't just try to be different, they tried to come up with something better.

    50. Re: Heu.. ???? by Anonymous Coward · · Score: 0

      In a script you'd work with objects. If you're working with text output in PS there is sth. wrong.

      That was the hardest part to learn coming from bash.

    51. Re:Heu.. ???? by MightyMartian · · Score: 4, Insightful

      No, I'm asking how is cutting off a path of a file (as an example of the kind of shortened output Powershell commands can produce) informative? And yes, I know it's fairly easy to overcome, but it just strikes me that this is the kind of GUI-centric thinking (this kind of output is straight out of a Listview object) that infects Powershell.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    52. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      You never wished for an object-oriented shell because you are already proficient in Unix shells, and it is clear you have only ever tried to make PS fit the Unix paradigm.

      No, we've never wished for an object-oriented shell because the simplicity of character streams and pipes are sufficient to handle 99% of the everyday needs of most users.

      PS's OO model may be a godsend if you're doing complex Windows administration across an enterprise, but for everyone else it's simply overkill.

      Quite frankly I'd be more excited about a shell based around Haskell or F#.

    53. Re:Heu.. ???? by Chelloveck · · Score: 1

      This is a serious question from a Unix user who is curious about PowerShell... I like the idea of piping objects around. Does it play with anything outside the .Net ecosystem? Is there some sort of platform-agnostic object notation or broker that would let me exchange objects with external (non .Net) programs? Say I write a script in Python. Is there any way to export the Python objects such that PowerShell can manipulate them?

      --
      Chelloveck
      I give up on debugging. From now on, SIGSEGV is a feature.
    54. Re:Heu.. ???? by MightyMartian · · Score: 1

      The problem with all these solutions were the limitations to what you could actually manage. CMD.EXE's major innovation mainly surrounded the extended syntax and logic surrounding the FOR command. And yes, the scripting host did provide the ability to create WMI and COM objects, and I did a lot of scripting in VBScript to automate various tasks, but it had limits on what it could manage, and I remember a number of my scripts had to manipulate the registry.

      Powershell, particularly in the last few iterations of Windows Server does have that benefit, that much of the system's functionality and most of its modules are scriptable, so on that score I do applaud MS. It's taken the better part of two decades, but they finally have a scripting system that can manage a Windows system with similar capabilities as *nix has had for decades. I just wish that solution wasn't an awkward language like Powershell.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    55. Re:Heu.. ???? by TemporalBeing · · Score: 1

      Ugh, PS is horrendous - especially trying to learn the f***ed up way it works.

      But on Windoze hosts you have nothing else command line wise to manage AD and Exchange (mostly what I punish my self with).

      It's object oriented. If you don't have a even a basic understanding of how objects work, of course it's going to be confusing. Once you break past that wall however, you find a well documented and sane terminal. Sadly many think "different" = "bad".

      I tried out PowerShell (PS) when it first came out, the general idea being attractive. However, even in Windows I install the GNUWin32 Utils and 90% of the aliases in PS conflict with standard Unix Commands (f.e ls, cp) and mean something entirely different. So I between that and the complete inability to have a nice debugging environment like Bash does - where it's easy to figure out what you're looking at just by looking at the output and not having something completely foreign to work with when piped - I quickly abandoned PS as useless.

      Yes, I know some people file it useful - good for them. But I'd rather have Bash where the output is entirely predictable and when something breaks it's extremely easy to figure out why.

      --
      Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
    56. Re:Heu.. ???? by TemporalBeing · · Score: 1

      This is a serious question from a Unix user who is curious about PowerShell... I like the idea of piping objects around. Does it play with anything outside the .Net ecosystem? Is there some sort of platform-agnostic object notation or broker that would let me exchange objects with external (non .Net) programs? Say I write a script in Python. Is there any way to export the Python objects such that PowerShell can manipulate them?

      No. PowerShell is exclusively written in C# AFAIK; at best you might be able to get another .NET-based Language (like IronPython), but .NET provides the basis for the object structure in PS.

      --
      Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
    57. Re:Heu.. ???? by slapout · · Score: 1

      Windows phone users complain because Microsoft brings things to iOS and android first

      --
      Coder's Stone: The programming language quick ref for iPad
    58. Re:Heu.. ???? by TemporalBeing · · Score: 1

      What I particularly dislike is how it automatically filters output, and you have to use arguments or other applets to give you fuller output. It just strikes me as being the exact opposite of how any particular command or script should work.

      No, it is not the opposite. It's giving the information that is the most usable and easily read by a human. Even *nix utilities do this. Hell, type "ls" and you don't get the file sizes and dates; you have to add -l to get those details.

      And objects, big fucking deal. I've been using Bourne variants for a quarter of a century and never thought "Boy, I wish I had classes".

      That just shows that you are stuck in the mindset of manipulating text outputs of commands to find the information you need. It certainly shows a lack of imagination that there could be anything better. What it doesn't show is that there is anything wrong with the concept of PowerShell simply because you don't get it.

      When you start writing scripts that make web requests that you can read the value you want without having to do clunky regular expressions, then directly updating specific cells in a spreadsheet (including with formatting) then you realise just how much easier this is with an object-based system. Or how about writing your own software as a .NET library so that the same code can be used for manual viewing in a .NET application or with powerful scripting with PowerShell with no additional effort.

      No, it shows that you need to use the right tool for the job.

      For example, if I'm writing a web request in a Bash script then either I'm calling out to wget/curl to handle it, or I'm writing a Python script (or another language) that will do the work elegantly and isolate it to just that script. I don't do web requests directly in Bash - I use the right tool. All of these combine together through the return value of the program and stderr/stdout/stdin to pass data back and forth using basic text - which is typically all you need. If more structured information is needed then it's really easy to dump it into a structured temp file and provide the path for that.

      Again, debugging is very easy - just at "echo" where needed, capture outputs to text files, and keep temp files from destroying themselves to analyze their contents. It's all pretty basic stuff and no advanced computer science degree is required or even knowledge of some special IDE (f.e VisualStudios) required to analyze or debug the stuff.

      And yes, I'm aware that you can use debuggers with PS, but then I have to load a debugger - which means yet another tool has to be installed and run - more memory required to figure out what is going wrong.

      And yes, I get the desire for OO-based scripts - but then, if I wanted that I would go to Python, Scala, or one of many other OO-based languages.

      Really, the only useful thing I found in PS was the ease with which one can access the Windows Registry since they treat it like another file path ("cd \\hklm\..."); this is not necessary on a non-Windows system since the Windows Registry doesn't exist.

      --
      Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
    59. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      I THINK that this is a slam on PowerShell but I'm not quite sure...

    60. Re: Heu.. ???? by Anonymous Coward · · Score: 0

      I dont think the idea is to try and replace other linux shells. Just making cross platform management easier for all sides. If youre a linux admin that needs to work with a win machine, you have native bash coming. If you are a windows admin who needs to do something to or from linux, native ps now gives you a more familiar option.

    61. Re:Heu.. ???? by Megol · · Score: 2

      It is SO "systemd". More of the binary is better bullshit.

      Hint: computers work in binary. Computers are fast, users are slow. Letting the computer represent data in a manner that avoids conversions between external data to/from internal data avoids a lot of unnecessary computation. But then one have to convert between binary and text when communicating with users, right?

      It isn't a problem given the extremely slow I/O speed of a human - conversion of a subset of data suitable for a screen takes very little computation power.

      In a modern system binary _is_ better. The added complication of translation to/from a human format is more than compensated by removing unnecessary text -> binary parsing for common tasks and the advantages binary data can have in redundancy, error correction and structured storage.

    62. Re: Heu.. ???? by Anonymous Coward · · Score: 0

      If you really believe this, your credibility is zero and you come off as a fucking moron.

    63. Re: Heu.. ???? by Anonymous Coward · · Score: 0

      So you have no idea how a database works. Got it. I can see why you had shaky systems when a moron was running them.

    64. Re:Heu.. ???? by Bobfrankly1 · · Score: 1

      No, I'm asking how is cutting off a path of a file (as an example of the kind of shortened output Powershell commands can produce) informative? And yes, I know it's fairly easy to overcome, but it just strikes me that this is the kind of GUI-centric thinking (this kind of output is straight out of a Listview object) that infects Powershell.

      Ah, I misunderstood the thrust of your response.
      If I'm understanding you correctly now, resizing the window to be wider will cause the path length to be extended. It typically only cuts it off when the data is too long to be displayed on the screen and the default formatting is in a table view. I'm admittedly guessing that it's the fullname property alongside some other properties in a table format that is causing this, do you have an example that produces this output? Get-ChildItem is the first that comes to mind, but it doesn't output like that by default.

    65. Re: Heu.. ???? by Anonymous Coward · · Score: 0

      I'm not sure if there's an upper limit to the resources that Exchange would gobble up.

      Sure there is: Available storage and memory.

    66. Re:Heu.. ???? by Megol · · Score: 1

      Embrace? No, MS have indirectly embraced bash (via the Ubuntu subsystem) but this isn't about bash.
      Extend? MS are the ones coding Powershell so yes, sure, they can extend it. How exactly is that a problem?
      Extinguish? Nope. WHY would MS extinguish something they worked hard to create and integrate into their operating system?
      --

      Unless you think MS plan to lure the poor Linux users to switch to Powershell, extend it so that a Linux system can't run without it and then suddenly making it closed source? If so you have unrealistic expectations on how good Powershell actually is and frankly should get your head checked out. It is MIT licensed BTW so if you don't like the direction development is going -> fork.

    67. Re:Heu.. ???? by Blaskowicz · · Score: 1

      Well, have you seen how linux/unix programs like to report output?
      This is the epitome of correct execution and behavior that adheres to the underlying philosophy :)

      user@host /path $ /usr/this/that/program -a -X a_list_of_important_arguments | foo -Z
      user@host /path $

      user@host /path $ hello? is anyone there?
      hello? : command not found
      user@host /path $ help
      GNU bash, version 4.3.42(1)-release (x86_64-pc-linux-gnu)
      copyright 1983, 1984, 1985, 1986.. ... 2001, 2002, 2003 ...
      Don't try to find help about commands here, you should have typed "info bash".
      We're trying to be friendly ; if you aren't able to use "info" because it's too hard, try "info info"
      These shell commands are defined internally.
      Now, here is how War and Peace ended :
      ....
      Filter error: Please use fewer 'junk' characters. Filter error: Please use few Filter error: Please use fewer 'junk' characters.er 'junk' characters.
      ....
      Your comment violated the "postercomment" compression filter. Try less whitespace and/or less repetition.

        Filter error: Please use fewer 'junk' characters. Filter error: Please use few Filter error: Please use fewer 'junk' characters.er 'junk' characters.
        Filter error: Please use fewer 'junk' characters. Filter error: Please use few Filter error: Please use fewer 'junk' characters.er 'junk' characters.
        Filter error: Please use fewer 'junk' characters. Filter error: Please use few Filter error: Please use fewer 'junk' characters.er 'junk' characters.

      ....
        Filter error: Please use fewer 'junk' characters. Filter error: Please use few Filter error: Please use fewer 'junk' characters.er 'junk' characters.
      Your terminal has now been filled. gl/hf

      user@host /path $

    68. Re:Heu.. ???? by Dr.Dubious+DDQ · · Score: 1

      I've been messing with it for a while now and I'm moderately productive with it, but I agree. It's like the powershell team has some people that really like BASH, some that really like Python, and some that really like c#, maybe one or two that like Visual Basic...and each group was assigned to work on different parts of Powershell.

    69. Re:Heu.. ???? by Dr.Dubious+DDQ · · Score: 1

      I find it kind of handy a times to be piping objects instead of just text, but it does get really annoying having to remember to add ".ToString()" so so many outputs. Even more annoying when that results in the text "System.Object[]"...

    70. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      because there's simply no point to using stupid utils like puppet and chef when 90% of what you do is call powershell anyway

      You can write custom providers for puppet which use Powershell as their underlying implementation.

      And if you structure it right, it's far more extensible & configurable to do it that way - you don't end up with a massive pile of Powershell scripts which mix generic system admin tasks with your specific environment and system logic.

      PLUS, a tool like puppet has the benefit of you not having to reimplement half that junk, because modules already exist that do what you're looking for on the Forge. In my experience, about 50-60% of my needs are handled by community modules. And I write my own modules for the things I'm missing, and throw those back to the community, so that I don't have to support all of them forever.

    71. Re:Heu.. ???? by Dr.Dubious+DDQ · · Score: 1

      It would be kind of nice to be able to go back to a nice, reliable Linux system but still be able to do WMI queries against all those poor Windows boxes on our network.

      The one *really* slow thing that I've had to fight with in Powershell isn't really Powershell's fault so much as Windows and/or .NET - there's no way to configure the TCP connection timeout, so anything involving an attempted connection takes forever to timeout and fail if there's nothing at the other end.

    72. Re:Heu.. ???? by jcdr · · Score: 1

      If what you say it true, why Microsoft is still trying so hard to lock PC manufactures to Windows ?
      UEFI secure product key is essentially a way to ensure world domination on the PC market.

    73. Re: Heu.. ???? by Anonymous Coward · · Score: 0

      Yes, Exchange Server is so flakey, that's why Office 365 goes down all the time... Oh, hang on, no it doesn't.

    74. Re:Heu.. ???? by macs4all · · Score: 0

      Ugh, PS is horrendous - especially trying to learn the f***ed up way it works.

      But on Windoze hosts you have nothing else command line wise to manage AD and Exchange (mostly what I punish my self with).

      It's object oriented. If you don't have a even a basic understanding of how objects work, of course it's going to be confusing. Once you break past that wall however, you find a well documented and sane terminal. Sadly many think "different" = "bad".

      No.

      It's just bloody OBNOXIOUS. Full Stop.

      Plus there's shit like a Suite of Cmdlets where MOST of them will accept a "DOS Path" as well as a UNC Path, and other Cmdlets in the same Suite will NOT accept UNC Paths. And FFS, it's 2016, why in THE FUCK don't UNC Paths work EVERYWHERE in Windows???

    75. Re: Heu.. ???? by Anonymous Coward · · Score: 0

      This has been the case for for at least 2 decades now already. "Windows admins" typically barely know how to use the very basic elements of active directory (such as changing a user's password), and little else beyond that.

    76. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      Increasingly Microsoft is less interested in maintaining operating system dominance.

      This statement couldn't be any further from the truth.
      M$ has invested a significant amount into it's OS platform, just in the wrong direction.
      I strongly believe that they just don't see the forrest for the trees.
      Why just last night I was discussing with a lovely old lady customer of mine the core functional differences between Apples approach and Microsofts to the varying platforms.
      It was very clear which provider was more tailored to the individuals day to day needs and which one failed to even provide basic necessities such as a built in dictionary at the context level!
      Users are increasingly struggling to get a grip on Windows 10 and the dual UI approach to its systems. Microsoft has a seriously bad history of displaying inconsistencies within its UI design that in some instances it is a case of what the * were they smoking?
      W10 continues to wreak this paradigm of theirs. It is strongly a case of division within the company. All internal dep's do have the goal of being the best, its just they seem to be competing with themselves and no-one else is even relevant to them. But I also believe it has been this way for decades.

      That being said, all Apple has to do to squash Microsoft is to go all in with its server technologies for businesses. But, sadly, this appears not to be the direction they are headed.

    77. Re:Heu.. ???? by macs4all · · Score: 0

      After 20 years of MS trying to kill the shell, they relented and decided the Windows platform needed one. But in typical MS style, they asked themselves "How can we make a shell that's notably different from everything else that already works?" and someone piped up "OOP is the Way of Everything." Welcome to another episode of Redmond: Not Invented Here Syndrome.

      And if "DOS is indeed DEAD", why, oh, why would you do something as RETARDED as using its horridly non-standard Copy/Paste keystrokes?!? Especially in a Shell that is presumably going to be used in a largely GUI OS???

    78. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      So their inclusion of ubuntu binaries and bash into Windows 10 will be something that you'll like?

    79. Re:Heu.. ???? by dbIII · · Score: 1

      When you start writing scripts that make web requests that you can read the value you want without having to do clunky regular expressions, then directly updating specific cells in a spreadsheet (including with formatting) then you realise just how much easier this is with an object-based system

      Sounds AWKward, or like PERL with weird syntax that doesn't work with others.

    80. Re: Heu.. ???? by dbIII · · Score: 1

      Kind of matches the platform then :)
      Exchange - the name says it all - swap it for a real mail transport agent and not an afterthought attached to an obfiscated and easily corrupted database that is only possible to backup without shutting down the system due to a shadow copy hack.

    81. Re:Heu.. ???? by Jeremiah+Cornelius · · Score: 1

      Code in machine language.

      --
      "Flyin' in just a sweet place,
      Never been known to fail..."
    82. Re: Heu.. ???? by Jeremiah+Cornelius · · Score: 1

      Ghar.

      The best thing to do when faced with Windows systems is pray for the end of civilization.

      --
      "Flyin' in just a sweet place,
      Never been known to fail..."
    83. Re:Heu.. ???? by brantondaveperson · · Score: 2

      "ls" is a great example. On unix, it's more or less impossible to take the output of ls, and break it apart into sane information, like file size and filename. As soon as you get spaces in filenames, you're shit out of luck.

      Powershell is a brutally ugly thing to use, but the idea of piping information around that isn't just lines of text is great. I just don't think that it's been implemented well yet.

    84. Re:Heu.. ???? by Culture20 · · Score: 1, Offtopic

      It is SO "systemd". More of the binary is better bullshit.

      Hint: computers work in binary.

      Users work in alphanumeric strings.

      Computers are fast, users are slow. Letting the computer represent data in a manner that avoids conversions between external data to/from internal data avoids a lot of unnecessary computation.

      The shell is the point of interaction between the user and the computer. The computer is fast. Very fast compared to the user. The computer can afford to spend a couple extra cycles to format output for the user and translate input from the user in the space between a user's keystrokes.

    85. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      REally OOP? Microsoft is the one who fought and paid billions to kill off OOP back in the 90s. OOP frameworks were all the buzz and what it did was hide Windows specific stuff underneath. So what they did was make something not OOP, what they said MSVC was is Object Like. And then they bashed MFC into every ISV and crushed all the vendors selling OOP frameworks. Look Ma, no more portable software. Microsoft wins and the customer looses. So when I hear Microsoft is doing OOP I have to look up what is this MS-OOP being talked about because it is generally nothing like the rest of the industry and geeks consider OOP.

      As for MS Power Shell(PowerHell?) being ported to Mac and Linux goes, it is no doubt a way to try and shim MS technology onto Linux systems in MS shops moving in Linux and Mac systems. Windows shop Admins will know Power Shell and Microsoft doesn't want they using Bash. So they'll give them something they know but make sure it almost works on the other platform. They will also have it phone home so the MS bean counters can keep track of how much Linux is getting used and what is being used so the marketing $$$ can be directed to that company appropriately.

      Smells like Std MSFT

    86. Re: Heu.. ???? by Anonymous Coward · · Score: 0

      | Out-String

    87. Re:Heu.. ???? by mjm1231 · · Score: 1

      True story: I once had to use ToString() to convert a variable. GetType() indicated the original variable was already a string, but the function it was being passed to would not accept it until the string was converted to a string.

      --
      Ideology: A tool used primarily to avoid the bother of thinking.
    88. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      "This statement couldn't be any further from the truth."
      And none of your statements are true either.

      "M$ has invested a significant amount into it's OS platform, just in the wrong direction."
      Yea right. That wrong direction made MS one of the most profitable companies in the world. And now it looks like they are making sure their technologies are OS agnostic giving them access to systems they did not have a few years ago. Even open sourcing some of their products is part of the strategy to neutralize their critics complaining about closed source software.

    89. Re:Heu.. ???? by MightyMartian · · Score: 1

      Will bash under Windows actually allow access to WMI objects?

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    90. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      > horridly non-standard Copy/Paste keystrokes

      Which ones are those? (Serious question.)

      If you're referring to Ctrl+Insert for copy and Shift+Insert for paste, those are from CUA (Common User Access), a UI standard that's been highly influential on IBM, Microsoft (DOS and Windows), and Unix-based systems: it specifies things like Tab and Shift+Tab to move between fields, Esc to cancel, Return to accept, F1 for help, the File, Edit, and Help menus, and more. (See https://en.wikipedia.org/wiki/...)

    91. Re:Heu.. ???? by bondsbw · · Score: 1

      Directly, no. But both provide ways to convert through common data languages such as JSON.

      --
      All my liberal friends think I'm a conservative, all my conservative friends think I'm a liberal.
    92. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      Nothing that ever came from Microsoft uses objects. It uses thin (very thin, onion-skin-paper-thin) wrappers around things to fool the foolish into thinking that you are dealing with objects when you are not.

      PowerShell is a stinking pile of shit. No matter how much polish the Microsoft Fanbois try to put on it it will still be a stinking pile of shit.

    93. Re:Heu.. ???? by fuzzywig · · Score: 1
      How's that different from something like "ls", where I have to add arguments if I want to see more information than just the filename?

      (Ironically, if you type "ls" into Powershell, you get an an output that's pretty much the same as "ls -l", because it turns out, that's what people want most of the time)

    94. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      Embrace, extend and extinguish ???
      Link:
      https://en.wikipedia.org/wiki/...

      no ,this shit just change kernel panic on blue screen and will show it in ten times more

    95. Re:Heu.. ???? by macs4all · · Score: 1

      If you're referring to Ctrl+Insert for copy and Shift+Insert for paste

      No, it's mainly the use of Enter (Return) rather than Ctrl-C for Copy that drives me nuts.

      I suppose you will say that "Return" (Enter) is simply "Accepting" the IMPLIED "Copy" that follows the separate "Mark" Action; but would it have killed them to include keybindings for Ctrl-C,X,V,Z for people who are going back and forth between a GUI OS like Windows and PowerShell?

    96. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      As a long time user of 4DOS, I prefer TCC for Windows. In BSD or Linux, it's tcsh all the way.

    97. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      Or sometimes you use the right tool for the right job.

      'du ./*' will give you a filesize and filename for every file in the current directory (size in column 1, name in column 2, tab delimited). In fact, 'du ./* | cut -f 2' will give you just the filenames, one per line which can easily be paired with 'du ./* | cut -f 2' for just the sizes. And yes, this works pretty well even with spaces in the file names.

    98. Re:Heu.. ???? by chispito · · Score: 1

      No, I'm asking how is cutting off a path of a file (as an example of the kind of shortened output Powershell commands can produce) informative? And yes, I know it's fairly easy to overcome, but it just strikes me that this is the kind of GUI-centric thinking (this kind of output is straight out of a Listview object) that infects Powershell.

      If it is fairly easy to overcome, write a quick function to overcome it. Don't people write shell functions for this very same reason in Unixland?

      --
      The Daddy casts sleep on the Baby. The Baby resists!
    99. Re:Heu.. ???? by Bobfrankly1 · · Score: 1

      No, it shows that you need to use the right tool for the job.

      ...

      And yes, I'm aware that you can use debuggers with PS, but then I have to load a debugger - which means yet another tool has to be installed and run - more memory required to figure out what is going wrong.

      You claim that loading different tools for different tasks is fine, but draw the line when that tool is a debugger? o.O

    100. Re: Heu.. ???? by david_thornley · · Score: 1

      I'm happy believing the CS types are better, but it seems to me you'd likely have to pay them more, and you'd run more risk of them deciding IT isn't for them and moving to something different.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    101. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      stat -c "%s %n" *

    102. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      Certifications make M$ billions. With Azure M$ needs to make it possible for MCEs to administer other OS. It's unlikely to influence,say Linux system administrators (except if they're typical Ewebuntu fans), to change to using PowerShell (because it sucks compared to the Linux toolset).
      I say that as a someone who is proficient with PowerShell, and who now enjoys being able to get my Windows admin tasks done a lot faster thanks to the new BASH addition to Windows 10.

      M$ does get Open Source, but they know the general public doesn't. So embrace, extend, extinguish won't work with Linux/Open Source (thanks to the GPL and forking) - but it will allow them to maintain the perception amongst their (mostly silent L) users that they are relevant in the long term.

      No matter how much money M$ continues to throw at the Linux Foundation it won't change things - Linux rules the Desktop (yes, it's now in Windows 10) as the figures don't account for the installations attributed to M$ that have Linux co-installed or as the replacement (or count Chrome as Linux). Linux already rules the mobile market, the servers (despite M$ bribing HostGator to use IIS to host millions of parking pages), the televisions, the car OS, and the iOT market. Your new benevolent dictators don't care what you use - we just don't want your bullshit OS foisted on us.

    103. Re:Heu.. ???? by Anonymous Coward · · Score: 0

      "ls" is a great example. On unix, it's more or less impossible to take the output of ls,

      Welcome to Linux. I hope you're enjoying your first week with Ewebuntu. Next week we'll be covering the basics of shell scripting, important things like - why you should never use ls in a script.

      Bad code:

      for i in ls /etc;do echo "$i";done
      Good code:

      for i in /etc/*;do echo "$i";done

      And yes, "$i" will happily deal with spaces in filenames.

      and break it apart into sane information, like file size and filename.

      OReilly?

      ~ $ ls -Ash1 /etc
      total 1.5M
      4.0K acpi
      4.0K adduser.conf
      4.0K adjtime
      4.0K akonadi
      4.0K aliases
        12K alternatives
      4.0K apache2
      4.0K apparmor.d
      4.0K appstream.conf
      4.0K apt
      4.0K at.deny
      4.0K at-spi2
      4.0K bash.bashrc
      4.0K bash_completion
      4.0K bash_completion.d
      4.0K bindresvport.blacklist
      4.0K binfmt.d
      4.0K bonobo-activation
      4.0K ca-certificates
      8.0K ca-certificates.conf
      4.0K calendar
      4.0K catdocrc
      4.0K chatscripts
      4.0K checkinstallrc
      4.0K chromium.d

      [sigh] Want that tab seperated? Custom columns? Have you even heard of "Read the Fucking Manpage"?

    104. Re:Heu.. ???? by Megol · · Score: 1

      It is SO "systemd". More of the binary is better bullshit.

      Hint: computers work in binary.

      Users work in alphanumeric strings.

      No, users work in internal representation which sound, images/video and tactile senses (among others) convert to.

      Computers are fast, users are slow. Letting the computer represent data in a manner that avoids conversions between external data to/from internal data avoids a lot of unnecessary computation.

      The shell is the point of interaction between the user and the computer. The computer is fast. Very fast compared to the user. The computer can afford to spend a couple extra cycles to format output for the user and translate input from the user in the space between a user's keystrokes.

      Yes but that isn't the problem, is it? I responded to a person that thinks unstructured textual input/output is good for representing things that mostly are touched by computers. That means that instead of an optimized read/write routine using a binary format the computer have to convert from the textual representation into a binary one to work on the data and all updates by the computer have to be converted from the internal binary representation to a textual one. That's the problem, using resources in a pessimal way.

      Using a binary format is more efficient. Using a textual format (it isn't a format per se - ensuring a certain format is an additional overhead over that of conversion to/from text) is easier for simple systems - but we don't have simple systems anymore, the code required for structured binary storage with error correction and build-in redundancy etc. is dwarfed by the rest of the kernel responsibilities!

      You were moderated offtopic by someone, I can't understand that. Your post isn't offtopic - it is just wrong.

    105. Re:Heu.. ???? by Culture20 · · Score: 1

      Yes but that isn't the problem, is it? I responded to a person that thinks unstructured textual input/output is good for representing things that mostly are touched by computers

      But the context wasn't regarding systemd and its binary-ness, but instead powershell, which is a shell; a user interface by definition.

    106. Re: Heu.. ???? by Anonymous Coward · · Score: 0

      well done

    107. Re:Heu.. ???? by Jerry · · Score: 1

      Especially if the base class has a back door in it. All subclasses become owned.

      --

      Running with Linux for over 20 years!

  2. kills linux better than SystemD! by Anonymous Coward · · Score: 0, Troll

    fucking assholes.

  3. Winux by Anonymous Coward · · Score: 0

    Why doesnt microsoft just become a distro already?

    On the downside: they kill off everything they touch so i guess there goes Linux.

    1. Re:Winux by lucm · · Score: 1

      I guess then they're guilty for the Death of PC, since they own 90% of that market. This is a true genocide. 1.4 billion computers dead because of Microsoft.

      --
      lucm, indeed.
    2. Re:Winux by cellocgw · · Score: 1

      I felt a great disturbance in the Network, as though 1.4 billion OSes were crying out in pain.

      --
      https://app.box.com/WitthoftResume Code: https://github.com/cellocgw
    3. Re:Winux by TWX · · Score: 1

      I heard that "Lindows" as a name is available again...

      --
      Do not look into laser with remaining eye.
  4. Bullshit alarm by Anonymous Coward · · Score: 0

    How is a Windows sysadmin going to get anything done on Linux using PowerShell? How does this make their "skills more marketable?"

    1. Re: Bullshit alarm by Anonymous Coward · · Score: 0

      Because they realize that they are killing windoze and want somewhere for those unemployed sysadmins to go.

  5. Wow, will registry/hive on linux follow? by Anonymous Coward · · Score: 0

    I am speechless. Like how useful is this?

    1. Re:Wow, will registry/hive on linux follow? by Anonymous Coward · · Score: 0

      systemd will add this to it's functionality.

    2. Re:Wow, will registry/hive on linux follow? by I4ko · · Score: 2

      sysctl and gconf anyone?

    3. Re:Wow, will registry/hive on linux follow? by TWX · · Score: 1

      I am speechless. Like how useful is this?

      This serves to try to keep people that dabble in Linux from moving entirely away from Microsoft, basically allowing Microsoft to keep their foot in the door.

      Originally you had to learn the entirely different mindset that POSIX/UNIX/Linux required. Multiuser, very little interactive as root, bunch of new tools, some kind of difficult to use, but powerful once they're learned. To be proficient you had to learn all of this and once learned you probably came to appreciate both the effort and the result. You probably weren't interested in Microsoft tools, which often felt late to the party and not very capable.

      Now, you can attempt to work in a Linux/UNIX environment with Microsoft-feeling tools. You may not come to appreciate the GNU or POSIX stuff, you never really immerse yourself in it, so it's easier for Microsoft to call you back if you run into challenges. You haven't really mastered the UNIX model.

      At least that's my concern. I've been in meetings with Microsoft product reps who would be very condescending towards non-Microsoft solutions even if those solutions were older, more mature, and more robust, often because the worse GUI or lack of GUI meant that you actually had to know what you were doing. It makes it easier to pander to managers that aren't as technical as they should be. This is just another tool in that toolkit.

      --
      Do not look into laser with remaining eye.
    4. Re:Wow, will registry/hive on linux follow? by MightyMartian · · Score: 1

      Up until five or six years ago, all I ever heard from Windows fanboys was how great Windows was because it could be administered from a GUI, and there wasn't that stupid ugly primitive command line interface which only old men, BSD weirdos and Linux fanboys had any interest in using. Then, when Monad matured into Powershell, and became capable enough to at least replicate all the kludges and awfulness of VBScript and WMI, suddenly their note began to change. The first I saw of it was taking an online Server 2008 course by Microsoft, which announced that Windows Server 2008 was the most advanced server operating system ever, and bragging about how its advanced Powershell interface and scripting language put it to the head of the pack (I'm not kidding, this was actual an MS course). Then the Microsoft types started the "Powershell is better than silly old bash because OBJECTS!"

      I'll readily concede that it is by far the best automation tool available on Windows to administer Windows. But that's really false praise, considering how bad the previous automation systems were (remember the evil old days of GUI "scripting" software), and really, while it may be perfectly suited to Windows, the idea that it's somehow some great quantum leap forward as compared to the *nix ecosystem is little more than just empty bragging by a contingent of cheerleaders who were, before Powershell came on the scene, were sneering at CLIs.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    5. Re:Wow, will registry/hive on linux follow? by Bobfrankly1 · · Score: 1

      At least that's my concern. I've been in meetings with Microsoft product reps who would be very condescending towards non-Microsoft solutions even if those solutions were older, more mature, and more robust, often because the worse GUI or lack of GUI meant that you actually had to know what you were doing. It makes it easier to pander to managers that aren't as technical as they should be. This is just another tool in that toolkit.

      Salesmen putting down the competition in an effort to make a sale. In other news, the sky is still blue.

      This is the biggest reason to have a network or community of trusted techs/engineers with a variety of disciplines. Instead of "bad because I prefer X" you get actual usable feedback. You ask "I need something that does X" and they respond with probing questions instead of "Y or nothing". Sometimes the obvious old familiar tool with lots of history isn't the right one. Sometimes it is. Never depend on the salesman to determine if it's the right time to rip off the old bandaid.

    6. Re:Wow, will registry/hive on linux follow? by Bobfrankly1 · · Score: 1

      little more than just empty bragging by a contingent of cheerleaders who were, before Powershell came on the scene, were sneering at CLIs.

      You're off base. Those GUI cheerleaders are still cheering the GUI while looking forward to retirement within the next decade. They're the ones who will never install server core or nano because they can't RDP into it. I've known quite a few of them over my career, and I'm glad I don't have to work with any of them at my current employer.

      Those of us who use and promote Powershell are the guys who never stopped using a cmd shell, and still dealt with ugly batch and *shudder* vb scripts until powershell arrived and gave us something worth bragging about. We never sneered at CLIs, we simply wished for something better, and now we can start using that something on linux also.

  6. God Save us. by Anonymous Coward · · Score: 0

    Do they have to ruin everything? Or at least try to?

    1. Re:God Save us. by fisted · · Score: 3, Insightful

      Nope -- they only ruin Lunix. The BSDs are doing fine.

    2. Re:God Save us. by Anonymous Coward · · Score: 0

      also Mic OS, BoES, Solarsi and others you're probably too young to remember

    3. Re:God Save us. by fisted · · Score: 1

      I was talking about non-irrelevant OS but I'll admit that I've never heard of "Solarsi".

  7. A sign of things to come. by Hylandr · · Score: 2

    It looks as though MS has finally accepted the inevitable.

    Though I shudder to think what hell may follow with MS getting it's fingers in the FOSS Pie.

    --
    ~ People that think they are better than anyone else for any reason are the cause of all the strife in the world.
    1. Re:A sign of things to come. by FictionPimp · · Score: 2

      The future for them is linux. There is no value in writing operating systems as we move to the cloud. The value is in charging monthly to host those systems and writing tools to use and manage those systems.

    2. Re:A sign of things to come. by Hylandr · · Score: 2

      Than Linux has won.:)

      --
      ~ People that think they are better than anyone else for any reason are the cause of all the strife in the world.
    3. Re:A sign of things to come. by nine-times · · Score: 5, Insightful

      I think this is simple a smart move. You don't really have Linux admins saying, "Man, I wish I had Powershell!" as much as you have Windows admins saying, "I spent all this time making Powershell scripts. I wish I could run the same scripts on Linux." They're servicing their own users, and providing extra value in learning to use Microsoft technology.

      This is the sort of thing that I used to think Microsoft was stupid for not doing.

    4. Re:A sign of things to come. by Anonymous Coward · · Score: 0

      No. Unix won. Linux is just another rip off of a better OS.

      Oh, and it's "then" not "than." I love that we're graduating monkeys that can't get 3rd grade vocabulary correct.

    5. Re:A sign of things to come. by Anonymous Coward · · Score: 0

      Than Linux has won.:)

      Linux won a decade ago.

    6. Re:A sign of things to come. by Anonymous Coward · · Score: 0

      Yes, 2016 is the year of Linux on the desktop.

    7. Re:A sign of things to come. by jcdr · · Score: 1

      Probably not UNIX.
      Linux have now so much specific system calls, ioctl, filesystems in addition to Linux specific user space tools like udev, and systemd that now Linux define a new standard by itself.
      UNIX will gradually be just be a supported compatibility.

    8. Re:A sign of things to come. by Billly+Gates · · Score: 1

      Not to mention bash on Windows and half of Ubuntu!

    9. Re:A sign of things to come. by Anonymous Coward · · Score: 0

      THEN

  8. Not needed by Anonymous Coward · · Score: 0

    Nope... We already have native tools on Linux to do the same and more. The last thing we need is .Net bloat on our pristine Linux systems.

    Any system admin who can't administer a Linux system using its native tools should not be allowed near the system in the first place.

    This move reeks of the embrace, extend, extinguish strategy. Not needed.

    I hope companies stay clear of this.

    1. Re:Not needed by Anonymous Coward · · Score: 0

      The last thing we need is .Net bloat on our pristine Linux systems.

      They already open sourced the entire .NET framework, so you can trim it down if it actually is bloated. (It's not. It runs well, at least on Windows.)

      Any system admin who can't administer a Linux system using its native tools should not be allowed near the system in the first place.

      Any system admin who can't see the value of universal scripts for common needs shouldn't be allowed to do anything bigger than monkey-work.

      I hope companies stay clear of this.

      They're going to use whatever tech meets their needs. I don't know or care whether it will be .NET, but this move makes it more likely to be the case.

    2. Re: Not needed by Anonymous Coward · · Score: 0

      Didn't they only open source .net core? Pretty sure the frame work is still closed source.

  9. Re:How much spyware is in it? by Austerity+Empowers · · Score: 4, Insightful

    Solutions to problems no one except windows admins are having. I don't think I'll lose much sleep.

  10. it's a trap!! by Anonymous Coward · · Score: 0

    All of Microsoft's Linux-related activity is a gateway drug. Surrrrre, we play nice with Linux! We *love* open source! Yes, who wouldn't love open source software --- why pay a small army of developers gazillions of dollars when they can get a limitless supply of kids and summer interns to do the work for free?

    It's all about luring you in to using Azure cloud services, folks. That is the bottom line. In other words follow the money, people, follow the money.

  11. Round up the usual conspiracy theories by Anonymous Coward · · Score: 0

    Microsoft open-sources something once again. So, what's their evil plan this time...?

    And while we're at it, why is Bill Gates really trying to "eradicate diseases" in the Third World...?

    (Note to posters and moderators: this isn't a troll, it's satire. Feel free to ignore it if you can't tell the difference.)

  12. Bash...powershell by the_skywise · · Score: 1, Insightful

    Bash...

    Powershell...

    Bash...

    Powershell...

    RIIIIGGGHHHTT!!!!

    1. Re:Bash...powershell by Anonymous Coward · · Score: 0

      Both suck balls.
      I don't understand why bash, a scripting language with the most fragile and counter intuitive syntax ever is still so popular today.
      And then there is powershell. Somehow it manages to be worse.
      Just replace the whole thing with a python derivative.

    2. Re:Bash...powershell by Anonymous Coward · · Score: 1

      Here you go:

      http://xonsh.org/

    3. Re:Bash...powershell by 93+Escort+Wagon · · Score: 1

      That's what I don't get - what is the point of putting powershell on a unix box? Even if you have to administer Windows servers, I don't understand why you wouldn't just drop to bash (or whatever), ssh to the server and use powershell there. Why would you need powershell on the client?

      I feel like I'm missing something...

      --
      #DeleteChrome
    4. Re:Bash...powershell by Anonymous Coward · · Score: 0

      Both suck balls.
      I don't understand why bash, a scripting language with the most fragile and counter intuitive syntax ever is still so popular today.
      And then there is powershell. Somehow it manages to be worse.
      Just replace the whole thing with a python derivative.

      Python? HAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHA

      Oh God no.

      Why would anyone use a language where whitespace is part of the syntax?

    5. Re:Bash...powershell by Blaskowicz · · Score: 1

      There is MS SQL for linux. You might drop to bash, ssh to the server and use powershell on linux there.

    6. Re:Bash...powershell by dbIII · · Score: 1

      There are several far more mature and stable SQL solutions on linux already and some of them have no licencing costs.
      Why use MS SQL on linux other than as a quick way to have something for people who know about MS SQL but have no time to learn how to use the others?

    7. Re:Bash...powershell by Anonymous Coward · · Score: 0

      Bash...

      Powershell...

      Bash...

      Powershell...

      RIIIIGGGHHHTT!!!!

      .... ZSH!

      As a Linux user I much prefer ZSH over BASH and I don't know a thing about Powershell as I've not used windows since 2006...

      So yup, ZSH it is. Sorry Microsoft, you're too late!

    8. Re:Bash...powershell by samwichse · · Score: 1

      Hey, that is pretty sweet. I like the command args completion especially.

  13. It's not what I call a scripting language. by VAXcat · · Score: 2, Insightful

    Powershell isn't really a scripting language - it's a command parser where all the commands are like "Disassemble-the_Complicated-Dictionary-using-impossible-Format".

    --
    There is no God, and Dirac is his prophet.
    1. Re:It's not what I call a scripting language. by Anonymous Coward · · Score: 0

      agreed. Coming from Solaris to Windows, I find it horrid, just horrid. Some days, I would give my server for a workable "grep".

    2. Re:It's not what I call a scripting language. by Anonymous Coward · · Score: 0

      There's grep for Windows, as well as many other useful unix/linux utilities.

    3. Re:It's not what I call a scripting language. by Anonymous Coward · · Score: 0
    4. Re:It's not what I call a scripting language. by Bobfrankly1 · · Score: 1, Interesting

      agreed. Coming from Solaris to Windows, I find it horrid, just horrid. Some days, I would give my server for a workable "grep".

      pipe to: where {$_.property -match "regex"} Powershell has had a workable grep for a long time, but it's usually learning how objects work that typically obstruct new users.

    5. Re:It's not what I call a scripting language. by Black+Parrot · · Score: 4, Funny

      agreed. Coming from Solaris to Windows, I find it horrid, just horrid. Some days, I would give my server for a workable "grep".

      pipe to: where {$_.property -match "regex"}

      Powershell has had a workable grep for a long time, but it's usually learning how objects work that typically obstruct new users.

      Wow, that's elegant.

      --
      Sheesh, evil *and* a jerk. -- Jade
    6. Re:It's not what I call a scripting language. by spongman · · Score: 2

      sls '<regex>' <files>

    7. Re:It's not what I call a scripting language. by MightyMartian · · Score: 3, Interesting

      Except Cygwin is even more bloated and slow than Powershell. I did actually work a lot with it about ten years ago, to the point where I even got a radius daemon compiled, but it was arduous and Cygwin can be a bit flaky. But really, the biggest problem is that it's slow.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    8. Re:It's not what I call a scripting language. by Anonymous Coward · · Score: 0

      where {$_.property -match "regex"}

      lolololololoolololololololoololololoololololololo

      What a concise version of grep oh man

      Windows users will put up with anything.

      That being said, Microsoft releasing an open source version of powershell is still commendable. Just saying, that's nowhere near as good as a Unix command line.

    9. Re:It's not what I call a scripting language. by The-Ixian · · Score: 1

      And.... of course, nobody responds to this one.

      No lolololololol posts stating how asinine the syntax is in PowerShell... oh... because it is actually a shorter command line than grep....

      --
      My eyes reflect the stars and a smile lights up my face.
    10. Re:It's not what I call a scripting language. by Anonymous Coward · · Score: 0

      And.... of course, nobody responds to this one.

      No lolololololol posts stating how asinine the syntax is in PowerShell... oh... because it is actually a shorter command line than grep....

      ...because as we all know, shorter lines are always better.

    11. Re: It's not what I call a scripting language. by Anonymous Coward · · Score: 0

      LOLOLOLOL who did it first though? Who copied who? Ok then stfu. It's 1 char shorter.

    12. Re: It's not what I call a scripting language. by Anonymous Coward · · Score: 0

      Yep. Since elegance is what I look for most in tools that I use.

    13. Re:It's not what I call a scripting language. by Anonymous Coward · · Score: 0

      Except this was the second post, and before someone actually though that the other variant was something you'd put in a script for anything but an entry to some "obfuscated ... contest".
      Also what in all the world does sls stand for??

    14. Re:It's not what I call a scripting language. by Bobfrankly1 · · Score: 1

      agreed. Coming from Solaris to Windows, I find it horrid, just horrid. Some days, I would give my server for a workable "grep".

      pipe to: where {$_.property -match "regex"}

      Powershell has had a workable grep for a long time, but it's usually learning how objects work that typically obstruct new users.

      Wow, that's elegant.

      Fair enough, the sls 'regex' files mentioned by spongman is probably more your speed. I prefer the where statements because they're much more flexible and not restricted to regex, but that's simply a matter of preference.

    15. Re: It's not what I call a scripting language. by Anonymous Coward · · Score: 0

      That is concise. However, no one knows about it. Part of the problem with PS is that the commands and syntax have changed radically through the versions. The difference between PS 1.0 and 4.0 is significant. I think a lot of us are waiting for it to stabilize before diving in (again).

    16. Re:It's not what I call a scripting language. by Anonymous Coward · · Score: 0

      No lolololololol posts stating how asinine the syntax is in PowerShell... oh... because it is actually a shorter command line than grep....

      No lol+, sorry. But if that extra char in grep vs. sls is really that important for you, try adding

      alias g=grep

      to your .bashrc or equivalent, for maximal char savings.

    17. Re: It's not what I call a scripting language. by Bobfrankly1 · · Score: 1

      LOLOLOLOL who did it first though? Who copied who? Ok then stfu. It's 1 char shorter.

      In code/scripting golf, it's not who finishes first, it's who comes in with the lowest score.

    18. Re:It's not what I call a scripting language. by Darinbob · · Score: 1

      Cygwin is great. It can be slow in some ways, but sometimes it's better to be slow if it can get work done instead of dealing with an operating system that is hostile to developers.

    19. Re:It's not what I call a scripting language. by Darinbob · · Score: 1

      It left me speechless.

    20. Re: It's not what I call a scripting language. by Bobfrankly1 · · Score: 1

      That is concise. However, no one knows about it. Part of the problem with PS is that the commands and syntax have changed radically through the versions. The difference between PS 1.0 and 4.0 is significant. I think a lot of us are waiting for it to stabilize before diving in (again).

      The biggest differences are between versions 2 and 3. Version 3 added in a ton of quality of life fixes that help prevent hair-loss. With the release of Version 3, the syntax is functionally stable, and while there may be some QOL fixes since, the V3 ways still work the same.

      The cmdlets themselves may have been extended (additional parameters) but they've been stable as well. The only major catch you might see is the lack of some newer generation cmdlets on older windows OS. Win7, Win8, and Win10, each OS adds additional cmdlets that the predecessor do not have, so if you have to support older generation OSs, you have to write your scripts down to that level.

    21. Re:It's not what I call a scripting language. by Bobfrankly1 · · Score: 1

      No lolololololol posts stating how asinine the syntax is in PowerShell... oh... because it is actually a shorter command line than grep....

      No lol+, sorry. But if that extra char in grep vs. sls is really that important for you, try adding

      alias g=grep

      to your .bashrc or equivalent, for maximal char savings.

      I did...in powershell :P

    22. Re:It's not what I call a scripting language. by Anonymous Coward · · Score: 0

      Out of curiosity, do you consider find(1) and its arguments "elegant"?

      You can bludgeon it into doing useful work, but man I don't call it "elegant".

      https://www.gnu.org/software/findutils/manual/html_mono/find.html

      Sometimes power and flexibility come at a cost of some weird ugliness. Note, I've never used PowerShell so I'm not claiming anything about it specifically.

    23. Re:It's not what I call a scripting language. by Anonymous Coward · · Score: 0

      That's because everyone here knows that grep stands for something like 'general regular expression parser' or some such.

      WTF does 'sls' stand for, and is its primary purpose to do a regexp search through files and/or character streams?

    24. Re:It's not what I call a scripting language. by Anonymous Coward · · Score: 0

      To list items in the current directory where the name matches a regular expression:

      gi . | ?{ $_.Name -match "regex" }

      gi is short-hand for Get-Item, which returns a stream of objects representing the files, with properties for each property of the file (Name, LastWriteTime, Mode, etc). | pipes that stream of objects to ?, which is a shorthand for 'where', which is a shorthand for Where-Object, which accepts a subexpression, where each item is available as $_, and .Name is a property of it.

      Since everything is an object, there's no text parsing. A list of files is a list of file objects. With properties. So everything is easily accessible and parsable, and it's clear what would fail how. No text to parse.

    25. Re:It's not what I call a scripting language. by Bobfrankly1 · · Score: 1

      That's because everyone here knows that grep stands for something like 'general regular expression parser' or some such.

      WTF does 'sls' stand for, and is its primary purpose to do a regexp search through files and/or character streams?

      This argument brought to you by that employee you know will be canned in 6 months because he believes learning something new is a waste of time. You all know him....or knew him :P

    26. Re:It's not what I call a scripting language. by Gadget_Guy · · Score: 3, Informative

      Wow, that's elegant.

      Actually, depending on what was being piped, it could be simplified to:

      cat file.txt | where PropertyName -match "regex"

      But where the elegance lies is that the similar code would work for other conditions, beyond what grep could do. If you wanted to find all the long lines in a file, you would say:

      cat file.txt | where Length -gt 80

      Of course, if you use the scriptblock version with the { } characters, then you can do complicated expressions

      # Find long lines that start with the word using
      cat file.txt | where { $_.Length -gt 80 -and $_ -match '^using" }

      # Find large files
      dir | where Length -gt 1mb

      # Find large files that were written within the last week (not optimised)
      dir | where { $_.Length -gt 1mb -and $_.LastWriteTime -gt (get-date).AddDays(-7) }

      This so-called non-elegant grep replacement can be used anytime you want to filter something. It doesn't have to be the contents of files or files themselves. Here I download the Slashdot.org homepage and find the link to the privacy statement:

      $html = invoke-webrequest http://slashdot.org/
      $html.Links | where InnerText -eq 'Privacy'

    27. Re:It's not what I call a scripting language. by Anonymous Coward · · Score: 0

      Not sure why there is so much Cygwin hate. Its an absolutely wonderful product that has been unheard of and / or ignored by end users for years.

    28. Re:It's not what I call a scripting language. by Anonymous Coward · · Score: 0

      To you fucktards:
      ls is an alias for gi which is a alias for get-childitem.
      In order to get the complete command just hit the tab key and powershell will fill out what you are so afraid of typing. i.e. get-ch -> tab produces Get-ChildItem get-c -> will produce all the cmdlets starting with get-c:
      Get-Certificate
      Get-CertificateAutoEnrollmentPolicy
      Get-CertificateEnrollmentPolicyServer
      ad nosium

    29. Re:It's not what I call a scripting language. by Anonymous Coward · · Score: 0

      For you fucktards
      get-help sls
      NAME Select-String
      SYNOPSIS Finds text in strings and files.

      Maybe you should actually try it before WTFing down in your mom's basement.

    30. Re:It's not what I call a scripting language. by spongman · · Score: 1

      PS C:\> Get-Alias sls

      CommandType Name
      ----------- ----
      Alias sls -> Select-String

      (modulo whitespace mangling)

    31. Re:It's not what I call a scripting language. by spongman · · Score: 1

      also, what in the world does 'grep' stand for?

      (i know)

    32. Re:It's not what I call a scripting language. by tgv · · Score: 1

      Not sure if sarcastic or not.

      If you like that approach, and want it in your shell, I suggest you take a look at awk.

      cmd | awk '/regexp/' will do a grep
      cmd | awk 'length($0) > 20' will print lines of length over 20
      cmd | awk 'NR % 2 == 1' will print odd lines
      etc.

      The syntax is much more concise than "$_.property -match", yuck.

      Of course, it's limited to lines.

    33. Re:It's not what I call a scripting language. by jwhitener · · Score: 1

      Maybe my powershell is not modern enough to have that command?

      Windows PowerShell
      Copyright (C) 2009 Microsoft Corporation. All rights reserved.

      PS C:\Users\jwhitene> $html = invoke-webrequest http://slashdot.org
      The term 'invoke-webrequest' is not recognized as the name of a cmdlet, function, script file, or operable program. Che
      ck the spelling of the name, or if a path was included, verify that the path is correct and try again.
      At line:1 char:26
      + $html = invoke-webrequest http://slashdot.org
              + CategoryInfo : ObjectNotFound: (invoke-webrequest:String) [], CommandNotFoundException
              + FullyQualifiedErrorId : CommandNotFoundException

    34. Re:It's not what I call a scripting language. by Gadget_Guy · · Score: 1

      Yes, that is a very old version of PowerShell that doesn't include that command. You can download the latest version as part of the Windows Management Framework. You can see the documentation for Invoke-WebRequest (where most of the examples are at the end).

  14. Too Late by Anonymous Coward · · Score: 0

    I ported all my legacy PowerShell scripts to Java ages ago.

  15. who wants it? by cellocgw · · Score: 1

    Every once in a while I get told to run something under cmd.exe or PowerShell, and am reminded how incredibly limited these apps are when compared with any *nix *sh terminal app. Why does anyone think Linux users would take PowerShell over bash?

    --
    https://app.box.com/WitthoftResume Code: https://github.com/cellocgw
    1. Re:who wants it? by Bobfrankly1 · · Score: 3, Insightful

      Every once in a while I get told to run something under cmd.exe or PowerShell, and am reminded how incredibly limited these apps are when compared with any *nix *sh terminal app. Why does anyone think Linux users would take PowerShell over bash?

      For many, working with an object-oriented terminal is immensely more preferable to having to wrangle text.

    2. Re:who wants it? by Dr.+Evil · · Score: 2

      Powershell has a very steep learning curve and IMHO lacks the end-user history of traditional unix shells.

      That said... doing things like having most of your OS exposed through objects for inspection and manipulation, even cells in spreadsheets or network resources has value.

      You *could* do this in bash with /dev/tcp/whatever, perl, sed, python and possibly an ldap client, but the exposed methods in powershell are more stable, have fewer dependencies and are easier to understand.

      The fact that it's so hard to do simple things makes it very difficult to add to your knowledge without reading a few books or taking some course on the subject, then using it daily in Windows admin work.

      I always wish I knew more about using it, but... unless you're deep in this stuff, it's better to skim the capabilities and let the Windows admins figure out the details.

    3. Re:who wants it? by Anonymous Coward · · Score: 0

      Powershell runs on .net and .net is wrapped around win32. So yes, it was designed to run and take advantage of the Windows Platform. Not sure how it's gonna work on linux.

    4. Re:who wants it? by Bobfrankly1 · · Score: 1

      Powershell has a very steep learning curve and IMHO lacks the end-user history of traditional unix shells. ...

      The fact that it's so hard to do simple things makes it very difficult to add to your knowledge without reading a few books or taking some course on the subject, then using it daily in Windows admin work.

      I always wish I knew more about using it, but... unless you're deep in this stuff, it's better to skim the capabilities and let the Windows admins figure out the details.

      What you need is a user community. When I started out in powershell, I was pretty lost myself. I've progressed quite a distance because I found a community willing to help me understand when I was fighting the derpsauce. Find one that fits you, wether it's a mailing list, slack channel, or the like, and you'll find your progression accelerated.

    5. Re:who wants it? by 93+Escort+Wagon · · Score: 3, Funny

      ... For many ...

      You keep using that word. I do not think it means what you think it means.

      (best read in a pseudo-Spanish accent)

      --
      #DeleteChrome
    6. Re:who wants it? by rastos1 · · Score: 2

      working with an object-oriented terminal is immensely more preferable to having to wrangle text.

      You would need to have the objects first. On windows you have objects representing registry keys, services, users, installed packages, processes, scheduled tasks, shares, office documents, etc. etc. - Powershell gets the power from that. And in order to be similarly powerful on Linux, it would need to have bindings for all that on Linux. Somehow I doubt that.

    7. Re:who wants it? by Bobfrankly1 · · Score: 1

      working with an object-oriented terminal is immensely more preferable to having to wrangle text.

      You would need to have the objects first. On windows you have objects representing registry keys, services, users, installed packages, processes, scheduled tasks, shares, office documents, etc. etc. - Powershell gets the power from that. And in order to be similarly powerful on Linux, it would need to have bindings for all that on Linux. Somehow I doubt that.

      I don't disagree with this. However, everything has to start somewhere. The release on github is admittedly an alpha, so this is that start. I'm excited to see where it goes.

    8. Re:who wants it? by Anonymous Coward · · Score: 0

      The point of a shell is not to be an all-powerful programming language.
      The point is to allow to simply (with minimal changes to what you have done manually before) automate low-complexity tasks, with minimal extra complexity, in a hands-on way with high visibility into the steps.
      Missing the difference between a shell and a programming language is essentially what Powershell embodies - even though there is no doubt that quite a few people on the Linux side have mistaken bash for a programming language.
      And the focus on objects means there is still a lack of good tools to manipulate text.
      Plus the Java-style verbosity, leading then to the need for aliases (usually with names that have no connection at all to the long name). Yay for having to learn every command twice, once in long and once in short form.

    9. Re:who wants it? by Darinbob · · Score: 2

      But with bash you can just start typing text. No need to look up obscure command system and object names if they only thing you want to do is get a list of all files matching a pattern. There's no text wrangling, you just start typing commands. And the same syntax you use for giving commands is used if you want a complicated script.

      The difference is that Unix is oriented around commands and programs that take input and give output; whereas Windows is oriented around DLLs and frameworks that build on top of DLLs.

      So dealing with those DLLs from a scripting language is very powerful, but those are inherently complex operations. The learning curve is like a brick wall. Unix builds on combining very simple operations into more complex results. If you only use powershell twice a year you'll forever be stumped and lost, but if you use bash only twice a year you'll still be able to get stuff done.

    10. Re:who wants it? by Darinbob · · Score: 1

      Which is why people write scripts in python, but they don't use python as their command line shell. Powershell may be useful in the way python is useful, but it's not so great for a command line shell. Bash succeeds because it is a command line shell with a decent scripting capability, it's not as great at scripting as python is, but that's ok because you can easily combine bash and python (or perl, awk, sed, etc).

    11. Re:who wants it? by Bobfrankly1 · · Score: 4, Informative

      But with bash you can just start typing text. No need to look up obscure command system and object names if they only thing you want to do is get a list of all files matching a pattern. There's no text wrangling, you just start typing commands. And the same syntax you use for giving commands is used if you want a complicated script.

      The difference is that Unix is oriented around commands and programs that take input and give output; whereas Windows is oriented around DLLs and frameworks that build on top of DLLs.

      So dealing with those DLLs from a scripting language is very powerful, but those are inherently complex operations. The learning curve is like a brick wall. Unix builds on combining very simple operations into more complex results. If you only use powershell twice a year you'll forever be stumped and lost, but if you use bash only twice a year you'll still be able to get stuff done.

      As someone who uses bash twice a month (red hat and ubuntu), finding some of the commands, or the correct syntax/switches frequently tends to be a frustrating experience. The man pages are occasionally helpful, but they're just as often a novel on something that's inapplicable, and missing the data I really need. That means a trip to google, and ending up on a blog page.

      When I compare that to the documentation in powershell, man seems like an empty water bottle, and powershell's Get-Help is a river. I can Get-Help -examples to skip directly to syntax examples, and I'm moved on to the next step before I've gotten half-way through a man document that *may* or may-not help me. Also, the naming of commands in powershell is *predictable* which is a *huge* help. Get-Command Get-* will return all the available commands for retrieving information, and Set- * for setting whichever.
      You can typically *guess* what a command does, just by looking at it. How frequently can you say the same for linux?

      Learning *either* can be like a brick wall, depending on what that person has already learned, but I see powershell's documentation and the obviousness of it's command names lends itself to faster learning, including among a couple of linux admins I taught a little powershell to. They still prefer the bash terminal, but I see the fluency of their powershell scripts jumping when they use it every few months.

    12. Re:who wants it? by Gadget_Guy · · Score: 2

      But with bash you can just start typing text. No need to look up obscure command system and object names if they only thing you want to do is get a list of all files matching a pattern.

      You must be one of those people who wonders why foreigners speak foreign languages when English is so much easier to learn! (Even our children can do it) Bash is not magically easier than PowerShell for someone who only uses it twice a year. In fact, I would say that PowerShell is easier because it has a lot of built-in aliases to make it familiar to *nix users.

      Want to do a directory listing of all files matching a patter? Try ls *.txt. It will work in both bash and PowerShell. The arguments are different in PowerShell, but it's just a man ls to find out what they are (or just use the more convenient tab completion). Of course, those aliases are shortcuts to a verbose command naming scheme. I would think that for a very occasional user who might not remember the commands, it is far easier to use a system that has real descriptive names rather than the ultra-terse naming scheme used by *nix. Even if you can't remember the exact name in PowerShell, you can simply use a wildcard for the command name. Can't remember the command to export a CSV file? Type *csv* and keep pressing tab to cycle through the commands (or type man *csv* to see the entire list). If the occasional bash user had to export a CSV what would they do?

      Also, PowerShell has a much more consistent argument naming scheme. The basic utilities on *nix have a diverse structure are arguments. For example, ls and find cover a similar subject, yet their arguments are worlds apart. You may be used to that, and so it seems familiar, but it is certainly not a simple case a sitting down and typing.

      The difference is that Unix is oriented around commands and programs that take input and give output; whereas Windows is oriented around DLLs and frameworks that build on top of DLLs.

      That is not an accurate assessment. PowerShell is all about commandlets and functions that take input and give output. The difference is that the input and output isn't just a stream of text, but objects. If you want to get the size of a file, you read it as a number; you don't have to convert the text in a particular position of a directory listing.

      The pipeline is super-important in PowerShell. Objects, and lists of objects, are passed around and processed either sequentially or in a batch. The objects and pipeline are basically what gives PowerShell its power. To ignore that and talk about DLLs is just missing the entire point.

    13. Re:who wants it? by brantondaveperson · · Score: 1

      if they only thing you want to do is get a list of all files matching a pattern. There's no text wrangling, you just start typing commands.

      This is only because you already know bash's obscure command system, and that it doesn't have object names or a structured data interchange format (which, if you came from a programming background and had not been exposed to bash, you might be surprised about). In actual fact, if you are learning bash, you need to look up its obscure command system. I mean, sure 'grep' is a short word, but you can hardly argue that the word 'grep' isn't obscure.

    14. Re:who wants it? by Darinbob · · Score: 1

      Bash doesn't have very many of its own commands. They're mostly Unix commands. The same commands you'd have to know for powershell on linux. Bash does have syntax to learn though and various configuration settings (for command line usage mostly rather than scripting).

    15. Re:who wants it? by lars_stefan_axelsson · · Score: 1

      I can Get-Help -examples to skip directly to syntax examples, and I'm moved on to the next step before I've gotten half-way through a man [page]...

      OK, let's try: "man awk" in man browser window (less) type "/examples" and there they are...

      Yes, clearly inferior, slower and much more inelegant...

      --
      Stefan Axelsson
    16. Re:who wants it? by rastos1 · · Score: 1

      E.g., testing ports in powershell https://thesurlyadmin.com/2013...
      E.g., updating AD from spreadsheets http://stackoverflow.com/quest...

      Do you expect that to work in Powershell running on a Linux system?

    17. Re:who wants it? by Dr.+Evil · · Score: 1

      I think Python is a very good analogy. It has an interactive shell, but the interactivity is only really useful in edge cases like troubleshooting or learning.

      I'm not saying Powershell is great. I'm saying that it has a reason to exist and despite its weaknesses, has some strengths over traditional Unix shells.

    18. Re:who wants it? by Dr.+Evil · · Score: 1

      Testing of the ports maybe, AD probably not... but. the FOSS community is very good at implementing specifications. If the object model is sufficiently well-designed, then maybe Libreoffice, Samba, OpenLDAP, MariaDB etc, will get hooks/shims/modules/whatever for a Linux Powershell.

      The system level interfaces depend on how far the abstraction goes. They demonstrate obtaining objects for running processes... much easier and more accurate than grepping for PIDs.

      https://github.com/PowerShell/PowerShell/tree/master/docs/learning-powershell

      Their grep example is kind of ridiculous:

      grep -Rin "sometext" --include="*.cs"

      Becomes:

      Get-ChildItem -Recurse -Filter *.cs | Select-String -Pattern "sometext"

      But then look at stuff like their debugging and breakpoints: https://github.com/PowerShell/PowerShell/blob/master/docs/learning-powershell/debugging-from-commandline.md

      There's a lot of hard work and cool ideas in there. It would be a mistake to ignore it because the syntax is awkward and MS is behind it.

    19. Re:who wants it? by Bobfrankly1 · · Score: 1

      I can Get-Help -examples to skip directly to syntax examples, and I'm moved on to the next step before I've gotten half-way through a man [page]...

      OK, let's try: "man awk" in man browser window (less) type "/examples" and there they are...

      Yes, clearly inferior, slower and much more inelegant...

      Thank you for making my point, YES, you can /examples IN a "man awk".
      Now try that in "man ls" or "man grep" or a "man alias" or "man set". These are bare-bones core linux commands, and the help is inconsistent, and therefore inelegant and yes, frustrating. Yet try any of the core powershell cmdlets with "get-help -examples". CONSISTENCY. Heck, try typing "man for". Here I'll save you: "No manual entry for for". Now powershell: "Get-Help for" returns a list of possible matches. I can "get-help foreach", or get-help "about_for" which goes deeper on the for keyword.

      You can pick at powershell for many things, but it's help implementation soundly thrashes "man". It's not even a contest.

    20. Re:who wants it? by Bobfrankly1 · · Score: 1

      The point of a shell is not to be an all-powerful programming language. The point is to allow to simply (with minimal changes to what you have done manually before) automate low-complexity tasks, with minimal extra complexity, in a hands-on way with high visibility into the steps. Missing the difference between a shell and a programming language is essentially what Powershell embodies - even though there is no doubt that quite a few people on the Linux side have mistaken bash for a programming language.

      And *WHY* must they continue to be different or separate? "Because history" isn't a good enough reason. Having one language that's capable of handling simple (shell) and complex (programming) automation tasks isn't a mistake, it's sanity.

      And the focus on objects means there is still a lack of good tools to manipulate text.

      Ignorance of the tools doesn't mean they don't exist, and 'good' is a subjective term. Based on your logic thus far, I doubt your definition of 'good' will pass with everyone outside of the "MS is evil" club. :P

      Plus the Java-style verbosity, leading then to the need for aliases (usually with names that have no connection at all to the long name). Yay for having to learn every command twice, once in long and once in short form.

      You don't need to use aliases, you just need to press tab. Autocomplete/intellisense in powershell works not only for the command names, but the parameters and frequently the inputs as well.

      Also, complaining about verbosity is sad. It like you're trying to uphold the old greybeard mentality of job security by means of "no-one else knows how to do what I'm doing", or a poor-man's version of closed source by means of unreadable code. Verbosity makes code readable, not just the day you're writing it, but months or years later when you need to fix or update it. In powershell you have the best of both worlds with conciseness through tab-completion AND verbosity. If you compared actual keyboard strokes (instead of characters displayed) between powershell and bash, you might be surprised to find them very comparable.

    21. Re:who wants it? by david_thornley · · Score: 1

      Having one language that's capable of handling simple (shell) and complex (programming) automation tasks isn't a mistake, it's sanity.

      Which is why I love Perl.

      (Last week, I found myself on a Facebook thread on unpopular geek opinions. Among other things, I said my favorite computer languages were C++, Common Lisp, and Perl.)

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    22. Re:who wants it? by jwhitener · · Score: 1

      When I did get-help for invoke-webrequest, it looks even smaller than the typical man page.

      PS C:\Users\jwhitene> Get-Help invoke-webrequest

      NAME
              Invoke-WebRequest

      SYNTAX
              Invoke-WebRequest [-Uri] [-UseBasicParsing] [-WebSession ] [-SessionVariable ]
              [-Credential ] [-UseDefaultCredentials] [-CertificateThumbprint ] [-Certificate
              ] [-UserAgent ] [-DisableKeepAlive] [-TimeoutSec ] [-Headers ]
              [-MaximumRedirection ] [-Method {Default | Get | Head | Post | Put | Delete | Trace |
              Options | Merge | Patch}] [-Proxy ] [-ProxyCredential ] [-ProxyUseDefaultCredentials] [-Body
              ] [-ContentType ] [-TransferEncoding {chunked | compress | deflate | gzip | identity}]
              [-InFile ] [-OutFile ] [-PassThru] []

      ALIASES
              iwr
              wget
              curl

      REMARKS
              Get-Help cannot find the Help files for this cmdlet on this computer. It is displaying only partial help.
                      -- To download and install Help files for the module that includes this cmdlet, use Update-Help.
                      -- To view the Help topic for this cmdlet online, type: "Get-Help Invoke-WebRequest -Online" or
                            go to http://go.microsoft.com/fwlink/?LinkID=217035.

    23. Re:who wants it? by lars_stefan_axelsson · · Score: 1

      You can pick at powershell for many things, but it's help implementation soundly thrashes "man". It's not even a contest.

      Sure, you may have a point on that particular issue. You are after all talking about a system that was made up from whole cloth by one entity recently, not an older system that grew organically over time at many places, with input from many people.

      And the perceived lack of consistency of manual pages was indeed identified by the GNU crowd, and hence their trying to introduce the "info" subsystem (that addresses most/many of your issues).

      And "info" didn't really take off. Why? Because man pages are just "good enough". They're certainly not so bad that it would motivate someone to change platforms to windows (not even "info" it turns out). Having tried to build serious systems on both windows and Unix, the amount of documentation doesn't really help, when so much of what Microsoft tells you is just flat out wrong as in "will not work as advertised," even in the technical documentation.

      So is e.g. bash flawed? Sure, the semantics are alright, but the syntax is pretty horrible (hence Plan 9 and "rc" that I ran for many years, which is much improved and a joy in that respect). But, at least it works as advertised. (Note that "csh" that doesn't work as advertised, was pretty much dropped by the wayside a long time ago).

      And that's why we do not care one iota that MS moves powershell to Unix. And why we likewise don't care much about arguments about its superiority. We've been burned hard enough in the past to have learnt our lesson. And "bling" like slightly better on-line manuals (esp. in the age of Google) doesn't sway us one bit. Not even a little one. So feel free to keep powershells superior documentation. It comes with much too much baggage to be worth it.

      --
      Stefan Axelsson
    24. Re:who wants it? by Bobfrankly1 · · Score: 1

      Sure, you may have a point on that particular issue. You are after all talking about a system that was made up from whole cloth by one entity recently, not an older system that grew organically over time at many places, with input from many people.

      And yet it *IS* the particular issue you chose to pick on.

      And "info" didn't really take off. Why? Because man pages are just "good enough". They're certainly not so bad that it would motivate someone to change platforms to windows (not even "info" it turns out).

      This thread is discussing which is easier to learn. "Good enough" is NOT good enough in this context. It may be good enough for a veteran to the tool who simply needs a reference, but it's horrid to Joe Newbie trying to learn *nix for his computer career. You put both of them in front of Joe Newbie, and it might actually trigger that change you think impossible.

      And that's why we do not care one iota that MS moves powershell to Unix. And why we likewise don't care much about arguments about its superiority. We've been burned hard enough in the past to have learnt our lesson. And "bling" like slightly better on-line manuals (esp. in the age of Google) doesn't sway us one bit. Not even a little one. So feel free to keep powershells superior documentation. It comes with much too much baggage to be worth it.

      And that's the beauty of it. The rest of us don't have to care about your perception of it. You're free to despise it to your hearts content, though your feelings about it are not shared by the entire community. Those who aren't carrying a torch and pitchfork over Microsoft's antics of old can judge the merits of this tool for themselves.

    25. Re:who wants it? by lars_stefan_axelsson · · Score: 1

      And that's the beauty of it. The rest of us don't have to care about your perception of it. You're free to despise it to your hearts content, though your feelings about it are not shared by the entire community.

      Never said they were shared. Never even said I particularly hated it either. Why would I expend that kind of emotional energy on them, over a thing like this. Now, that there's someone somwhere that will use it, I have no doubt about. I'm likewise convinced that we'll be able to count them without resorting to using our toes... It's going to be a miniscule thing, and MS will no doubt dump it, or let it languish. (POSIX subsystem style)

      And it wasn't me that chose the issue, as much as you. You did after all point it out as a major advancement over the state of the art. To me it's a small step. In a not particularly important direction. We've tried it in the Unix community and it didn't catch on. So apparently it didn't hamper learning in any significant way.

      But if it floats your boat, go right ahead. Just don't expect to gather many proselytes on the way, and get used to talking to yourself. I doubt you'll find many others to exchange your experiences with... :-)

      --
      Stefan Axelsson
    26. Re:who wants it? by Bobfrankly1 · · Score: 1

      But if it floats your boat, go right ahead. Just don't expect to gather many proselytes on the way, and get used to talking to yourself. I doubt you'll find many others to exchange your experiences with... :-)

      Well, definitely not here. And I dare not mention where the lively discussions occur, Slashdot is not known for the good manners of it's commenters.

  16. "Oh, I bashed it all right. I bashed it good." by Pseudonymous+Powers · · Score: 0

    Here's a phenomenon I've never fully understood:

    1. Somewhere in corporate America, a worker has Windows installed on their work machine. Windows wasn't their idea, they were just issued it. Everybody in the department has the same computer. It's fine, whatever.
    2. The worker runs into some problem on the Windows machine.
    3. They notify their assigned IT representative about it.
    4. Their IT representative gives them a solution that only works on Linux, because all the IT guys use Linux.
    5. That solution doesn't work on Windows.
    6. IT representative shrugs.

    So at the very least, maybe the advent of Powershell on Linux will give these people something to countertroll with.

    1. Re:"Oh, I bashed it all right. I bashed it good." by Holi · · Score: 1

      And exactly where do you see this oh so unlikely scenario playing out. What IT support staff are running Linux while everyone else is running Windows, because that would just be dumb and I would expect the manager of that IT department to be canned post haste. In my 20 years in IT I have never seen nor heard of this situation.

      --
      Sorry, teleporters just kill you and then make a copy. A perfect, soul-less copy.
    2. Re:"Oh, I bashed it all right. I bashed it good." by The-Ixian · · Score: 1

      We do all run Linux... but we also run Windows.

      Any "admin" who is not fluent in both is not an admin (imo).

      --
      My eyes reflect the stars and a smile lights up my face.
    3. Re:"Oh, I bashed it all right. I bashed it good." by Darinbob · · Score: 1

      I've never seen that. I have seen the reverse though, everyone in IT uses Windows (and they only implement Microsoft solutions if there's ever a choice), and the user who has Linux is stuck on their own with no support, and regularly get memos requiring them to only run the corporate approved Windows applications on their Linux machine.

    4. Re:"Oh, I bashed it all right. I bashed it good." by Bobfrankly1 · · Score: 1

      And exactly where do you see this oh so unlikely scenario playing out. What IT support staff are running Linux while everyone else is running Windows, because that would just be dumb and I would expect the manager of that IT department to be canned post haste. In my 20 years in IT I have never seen nor heard of this situation.

      Perhaps you should get out more. I know of myself and others that run either linux or MacOS as their local machine, RDP into Windows VMs for management. We also tend to be the guys who get promoted, because we don't restrict ourselves to what's considered "fashionable" to get stuff done. We learn and adapt to new options when they suit our needs. We think outside of the box that you seem to be too busy judging people from within.

      Perks of this 'dumb' arrangement include:
      ---knowing my management tools all exist on the VM, as most of them are incompatible with my workstation. That means replacing my workstation leads to minimal downtime, I just have to install an RDP client. This also means that VM is ready for troubleshooting from remote locations, and I don't have to deal with large desktops due to multi-monitor setups, as one would when remoting to a local workstation.
      ---knowing that Windows key combinations won't be intercepted by the local OS.
      ---can test against Mac, Windows, and linux with ease.
      ---can use tools from all aforementioned OSs with ease.

  17. Dear Microsoft, by Anonymous Coward · · Score: 0

    please KYFHO my Linux! It's bad enough that I have to suffer your evil wares at work.

  18. Bash is outdated by Anonymous Coward · · Score: 1

    I doubt that PowerShell is going to be the solution, but it is emphatically true that Bash is a major pain in the ass.

    With Bash, the solutions to simple tasks are moderately complicated, and the solutions to complex tasks are just downright stupidâ"you don't even use Bash for complex tasks.

    It's time for something that was designed better.

    1. Re:Bash is outdated by Anonymous Coward · · Score: 1

      So throw in some perl. You're not limited to one language, you know. Bash is a command processor, after all. You're supposed to use it to combine other commands together with pipelines.

    2. Re:Bash is outdated by bmo · · Score: 2

      That's why we have zsh and fizsh with syntax highlighting and all that fun stuff and other interpreters like tcl.

      I've used powershell. It's the first thing I install on a Windows system if it's not already there.

      It's fucking awful. The only useful thing about it is that the two letter unix commands are aliased, so I don't get a dumb error when I type ls.

      The syntax of powershell is un-fucking-readable. You can type it with tab completion and aliases, but man, Looking.At.AlltheObjects.LabeledThis.Way for more than 15 minutes makes my eyes bleed.

      Microsoft /could/ put REXX (or tcl!) in as a system scripting language, but since that makes too much sense, they'll never do it. They could do a lot of things that make sense, but we're talking about Microsoft here.

      Pfui on PS.

      --
      BMO

    3. Re:Bash is outdated by multi+io · · Score: 1

      So throw in some perl.

      Perl isn't very unixish though. It throws everything into one process. Arguably, PS is more unixish except that it has objects where Bash uses (lines of) text.

    4. Re:Bash is outdated by aaarrrgggh · · Score: 1

      Workflow to troubleshoot logs with bash: grep log file, pipe a few more greps together:result.

      Workflow to troubleshoot logs with powershell: script log through spreadsheet and look at spreadsheet?

      There is a learning curve with any tool, the real question is how steep the curve vs how broad the value.

    5. Re:Bash is outdated by Anonymous Coward · · Score: 0

      In the early days of NT (mid 90's) REXX was included as part of the Windows Resource Kit.
      By the time NT 4.0 came out and the RISC processor manufacturers ran away from NT, REXX was pulled at IBM's insistence.

  19. Q and A Time: What can Powershell do... by WheezyJoe · · Score: 1

    What can Powershell do that BASH can't? Outside the Windows ecosphere, is there any use to this?

    --
    Take it easy, Charlie, I've got an Angle...
    1. Re:Q and A Time: What can Powershell do... by Espectr0 · · Score: 1

      Piping is really enhanced and customizable in Powershell compared to bash. It's really a nice feature. On linux, piping commands in bash are extremely limited. mostly because the command you pipe from cannot customize what data it is going to output to the command you pipe to.

      As usual, Microsoft likes to integrate heavily whatever they are making, and it shows.

    2. Re:Q and A Time: What can Powershell do... by macxcool · · Score: 1

      I find that they both make sense in their environments. I have no problem with piping in Linux because that's the way Linux command want to work. I sometimes find bash syntax cumbersome, but that's just because I'm unfamiliar. I love the pipeline in PS too. I use it all the time. I found PS much easier to learn from scratch than bash has been over the years. The Powershell_ISE is great too, and helps a lot.

    3. Re:Q and A Time: What can Powershell do... by gnupun · · Score: 1

      Bash is good for a few commands. But for complex tasks, you need a decent programming language and Bash is severely lacking in that area. Powershell has a good programming language.

      Another alternative, that is also a powershell competitor, is Xonsh, which is Python-based.

      https://developers.slashdot.or...

    4. Re:Q and A Time: What can Powershell do... by Anonymous Coward · · Score: 0

      On linux, piping commands in bash are extremely limited. mostly because the command you pipe from cannot customize what data it is going to output to the command you pipe to.

      Why exactly should it be able to customize output based on the pipe target? It sounds like something that makes commands work only with some specific other commands, seriously limiting reusability.

    5. Re:Q and A Time: What can Powershell do... by Anonymous Coward · · Score: 0

      I have no experience with powershell, but I don't understand how "customizing pipe output" is different than simply introducing another pipe. You can pipe through 10 different filters on a single command line if you want, and the unix tools you would use are powerful, industry standard, and feature-complete.

    6. Re:Q and A Time: What can Powershell do... by MightyMartian · · Score: 3, Informative

      Ever heard of awk and sed? I've been doing complex manipulations of data using tools like this for most of my IT career. Christ, I used awk to transform weird variant field exports from a mainframe to CSV to be imported into an inventory system while the most complex shell language Microsoft offered was the MS-DOS 6 command.com.

      Honestly I think some of the people bragging up Powershell never really used *nix at all, at least not in any sophisticated way.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    7. Re:Q and A Time: What can Powershell do... by Anonymous Coward · · Score: 0

      Quote a few things, such as:

      Really-long-command-options-because-I-enjoy-typing-a-lot.
      Treat everything like an object, thats fine.. Except for that one cmdlet that doesnt, re-write the whole script to get around it. No, too much work. Give up. Find some other way to do this.
      Completely useless error messages.
      Disable execution of PS scripts by default sometimes on some systems. Great now I cant f***ing do some simple thing with a PS script in MDT because PS execution is disabled at that point in the windows OS post install process. Nothing seems to work to enable it. Give up, hack the MDT scripts to do what you want instead.
      Some things wont work unless you run the PS command line window "as administrator" FFS!

      This is some of the dumbsh1t I have encountered working with MDT, AD and Exchange systems.

    8. Re:Q and A Time: What can Powershell do... by MightyMartian · · Score: 1

      There's no easy way to get Powershell scripts to run in the task scheduler. At the end of my little quest, more than a few recommendations basically amounted to run it as "powershell.exe -File script.ps". Powershell still isn't really integrated into Windows, for goodness sake.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    9. Re:Q and A Time: What can Powershell do... by multi+io · · Score: 2

      On linux, piping commands in bash are extremely limited. mostly because the command you pipe from cannot customize what data it is going to output to the command you pipe to.

      Why exactly should it be able to customize output based on the pipe target? It sounds like something that makes commands work only with some specific other commands, seriously limiting reusability.

      Yeah, almost everything that's genuinely useful limits reusability somewhat. By your logic, OOP "limits reusability" compared to raw assembly language, which allows you to do more things, including implementing your own OOP language in it. In reality, OOP tries to hit a sweet spot by constraining reusability somewhat and gaining functionality and ease of reusability for it. I've never used PS, but I understand that using object streams instead of text line streams will provide advantages. If the processes on both ends of the pipe declare what kind of objects the support, the shell can provide enhanced functionality if the processes support it, and fall back to text or to a generic meta object protocol otherwise.

      Have you ever tried to grep from an mbox file all mails sent last month by a specific sender? That's gonna be next to impossible because grep doesn't know anything about mails, and because grep is line-oriented, but an mbox file doesn't contain one mail per line. OTOH if you can turn the mbox file into a stream of "Mail" objects, which it really is, the job is probably trivial even with any kind of "object grep" that just works via reflection and doesn't know anything about Mail objects specifically.

    10. Re:Q and A Time: What can Powershell do... by Anonymous Coward · · Score: 0

      I like powershell. But personally, I'd rather spend less time making my script work just right and more time being on /.!

      CSV is a great example. "Import-CSV .\Foo.tx | Select Name, IPAddress" It doesn't matter whether the headers look like this: "Name, IPAddress, Other", this "IPAddress,Name,Other", or other. Powershell will handle the actual object just as you would want it to without needing to do fun regex "^([^,]+),([^,]+).*","\2,\1" stuff like this.

    11. Re:Q and A Time: What can Powershell do... by MightyMartian · · Score: 1

      Why would I need regex for that in something like awk?

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    12. Re:Q and A Time: What can Powershell do... by MightyMartian · · Score: 1

      And more to the point, I think you misread the example I used. The END PRODUCT was a fixed-record CSV file to be imported into an inventory system. The initial data was a pretty weird mainframe format distributed by CDROM way back in the day, which had fixed-length records, but variant field counts depending on the inventory item in question. You first had to parse each line to sort out how many fields were in the record, then process them to create a CSV file. CSV was used simply because the inventory software could natively import CSV.

      And really, I don't recall ever using regular expressions to process field names in a CSV file. Do people produce CSV files like that? Seriously?

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    13. Re:Q and A Time: What can Powershell do... by Bobfrankly1 · · Score: 1

      There's no easy way to get Powershell scripts to run in the task scheduler. At the end of my little quest, more than a few recommendations basically amounted to run it as "powershell.exe -File script.ps". Powershell still isn't really integrated into Windows, for goodness sake.

      Laziness in updating the task scheduler doesn't mean it's not "really integrated into Windows" as you put it. Group policies for login scripts take powershell scripts directly. Since Windows 7/2008, powershell has been packed into the OS. It's central to the management of the Core and Nano installs of Windows Server, and each major release of windows since has added more cmdlets and functionality. Cherry picking a single anomaly to justify your argument is so...so...slashdot

    14. Re:Q and A Time: What can Powershell do... by MightyMartian · · Score: 1

      To run scripts with the ease that bash runs scripts, you have to actively activate this ability, otherwise Windows wants only signed scripts. So now, Powershell still isn't as natively supported as bash is in *nix.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    15. Re:Q and A Time: What can Powershell do... by The-Ixian · · Score: 1

      Exactly right. Simplicity


      PowerShell: foreach ($line in (gc $filename)) { $line }
      Perl: open FILE,$filename; while(<FILE>) { $_; }; close FILE;

      You can see right away that PS is geared to abstract away a lot of the humdrum that other scripting languages make you do.

      --
      My eyes reflect the stars and a smile lights up my face.
    16. Re:Q and A Time: What can Powershell do... by The-Ixian · · Score: 1

      Really-long-command-options-because-I-enjoy-typing-a-lot.

      There are aliases to a lot of the most commonly used cmdlets by default.

      If there is no default alias, you can easily set up an alias within your script so you don't have to type more.

      New-Alias alias cmdlet

      Also, if you are using the built in PowerShell ISE to write your script, all of the available cmdlets are auto-completed.

      --
      My eyes reflect the stars and a smile lights up my face.
    17. Re:Q and A Time: What can Powershell do... by The-Ixian · · Score: 1

      I find that a good way to do the "poor man's service" with powershell is to simply launch your powershell script using the "-windowstyle Hidden" command line parameter.

      Then, in the PS script, put your code in a repeating loop with a sleep condition.


      while (1) { do stuff; sleep 10; }

      --
      My eyes reflect the stars and a smile lights up my face.
    18. Re:Q and A Time: What can Powershell do... by Anonymous Coward · · Score: 0

      >Have you ever tried to grep from an mbox file all mails sent last month by a specific sender? That's gonna be next to impossible because grep doesn't know anything about mails, and because grep is line-oriented, but an mbox file doesn't contain one mail per line.

      If I'm restricted to only using grep and I can't use awk or sed... I'd probably use grep -Pzo (perl regexp, replaces newlines with nulls, only show matching blocks instead of the whole line) which would let me do multiline matches easily.

      How exactly will powershell create a "mailbox object" when it is just getting text in an unknown format? When you work in a monoculture, I imagine it is easy when formats are forced on you.

    19. Re:Q and A Time: What can Powershell do... by Bobfrankly1 · · Score: 1

      To run scripts with the ease that bash runs scripts, you have to actively activate this ability, otherwise Windows wants only signed scripts. So now, Powershell still isn't as natively supported as bash is in *nix.

      Ah, so now you want to complain because Windows has a level of security that is above and beyond that of *nix. I see the straws you're grasping at, do you?

    20. Re:Q and A Time: What can Powershell do... by MightyMartian · · Score: 1

      Security shouldn't be attached to the running of the scripts, but rather what it is that the scripts actually do. Since Windows has that level of protection out of the box, having to enable scripts just to run is little more than some rather silly security theater.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    21. Re:Q and A Time: What can Powershell do... by Bobfrankly1 · · Score: 1

      Security shouldn't be attached to the running of the scripts, but rather what it is that the scripts actually do.

      Powershell has both. I like both. Why shouldn't it be both?

      Since Windows has that level of protection out of the box, having to enable scripts just to run is little more than some rather silly security theater.

      Having to enable unsigned scripts to run in an environment that a user or rookie admin has direct access to is a rather insightful move. Complaining about a Windows having security feature when the linux faithful typically like to bash on what they perceive as windows security is laughable. Besides, if you have admin on the box, and know access to that box is restricted to competent admins, disabling that feature is a one-liner.

      Just because it makes sense to allow scripts out of the box on linux, doesn't mean it makes sense to do the same on Windows. It's not an issue of native support, it's a question of "do we trust the guy who has physical access to the machine?" Linux is frequently locked in a datacenter and/or used by a competent (I hope) admin , Windows is commonly sitting on a desk out in the open and used by Joe Newbie, the new hotshot sales guy who claims he knows everything about computers, but is quite capable of unwittingly formatting his own hard drive from the command line. This was a conscious design decision with an accessible off-switch and it makes a lot of sense in particular use cases, just apparently not *yours*.

    22. Re:Q and A Time: What can Powershell do... by Bobfrankly1 · · Score: 1

      Really-long-command-options-because-I-enjoy-typing-a-lot.

      Also, if you are using the built in PowerShell ISE to write your script, all of the available cmdlets are auto-completed.

      Not to mention the parameter names. And frequently other things as well. Intellisense in the powershell ISE has been one of the most personally enjoyable parts about scripting in powershell for me. When in doubt, hit tab. Repeat until you find what you're looking for.

    23. Re:Q and A Time: What can Powershell do... by MightyMartian · · Score: 1

      If Joe Newbie doesn't have some level of Administrator privileges (in particular the domain and enterprise level admin group membership) these vile organization-crushing powershell scripts couldn't do it at all. Citing the possibility of an inexperienced admin is an issue, but is it the policy in your organization not to allow the running of Powershell scripts until they've proven themselves, and if that is the case, then how is that any different than not giving elevated (i.e. sudo) privileges to *nix IT staff until they've demonstrated some ability with it.

      That's my point, really. *nix security doesn't work because only really experienced people use it. That wouldn't be security at all. It works because unless you're able to gain elevated permissions, you're pretty much screwed (with the caveat about exploits, which Windows has as well). In that case, if you just enable shell usage for all your staff, and if Joe Newbie writes a Powershell script that deletes all users in an Active Directory Organizational Unit, unless he's got modify or admin privileges for that OU, he's shit out of luck. And if you're worried about Powershell being the problem, and leave Powershell disabled, or only allow signed scripts to be run, well, Mr. Newbie, presuming he does have some level of management permissions over that OU, can still go into Active Directorys Users and Computers and delete the users via the GUI.

      In other words, the whole disabled or signed only Powershell script system is really just security theater. It really does very little to secure a system.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    24. Re:Q and A Time: What can Powershell do... by Anonymous Coward · · Score: 0

      And bash?

      for i in $(cat filename); do

      done

      Way simpler than PS.

    25. Re:Q and A Time: What can Powershell do... by Bobfrankly1 · · Score: 1

      If Joe Newbie doesn't have some level of Administrator privileges (in particular the domain and enterprise level admin group membership) these vile organization-crushing powershell scripts couldn't do it at all. Citing the possibility of an inexperienced admin is an issue, but is it the policy in your organization not to allow the running of Powershell scripts until they've proven themselves, and if that is the case, then how is that any different than not giving elevated (i.e. sudo) privileges to *nix IT staff until they've demonstrated some ability with it.

      That's my point, really. *nix security doesn't work because only really experienced people use it. That wouldn't be security at all. It works because unless you're able to gain elevated permissions, you're pretty much screwed (with the caveat about exploits, which Windows has as well). In that case, if you just enable shell usage for all your staff, and if Joe Newbie writes a Powershell script that deletes all users in an Active Directory Organizational Unit, unless he's got modify or admin privileges for that OU, he's shit out of luck. And if you're worried about Powershell being the problem, and leave Powershell disabled, or only allow signed scripts to be run, well, Mr. Newbie, presuming he does have some level of management permissions over that OU, can still go into Active Directorys Users and Computers and delete the users via the GUI.

      In other words, the whole disabled or signed only Powershell script system is really just security theater. It really does very little to secure a system.

      Perhaps you're thinking script signing is meant to protect the system from being exploited. That's not how I view it at all and if I did, I'd agree with you in it being "security theater". There are ways around the execution policy if you do your research, but this level of complexity is where the user typically loses interest and gets back to their assigned job.

      I view code signing as a restraining wall to prevent the user from hurting *their self*. It take multi-line scripts which they are likely not capable of understanding, and prevents them from *easily* executing them, and potentially deleting or changing anything or everything they have access to.

      As for the rookie admin, yes, he can delete a user or an OU, but with scripts he may be capable of affecting an organization-wide change that is difficult to detect until problems arise days later, which may then be difficult to revert without a large loss of work. As well, with the GUI, the rookie is more likely to *understand* the scope of the change he's making as he can more easily picture the structure. This is less likely the case with a script, until he has a clear understanding of what he's working with.

    26. Re:Q and A Time: What can Powershell do... by MightyMartian · · Score: 1

      So really it is security theater, with a dose of security through obscurity.

      At the end of the day, the only thing that actually protects any environment are the low-level permissions systems. Signing scripts is just a false sense of security at best, and a general pain in the ass otherwise.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    27. Re:Q and A Time: What can Powershell do... by Bobfrankly1 · · Score: 1

      So really it is security theater, with a dose of security through obscurity.

      At the end of the day, the only thing that actually protects any environment are the low-level permissions systems. Signing scripts is just a false sense of security at best, and a general pain in the ass otherwise.

      That's your view, and you're entitled to it.

    28. Re:Q and A Time: What can Powershell do... by MightyMartian · · Score: 1

      That's why you have commands like awk, sed and even Perl which can manipulate the data. Unix's philosophy is not to have one big tool that does everything, but rather to have a suite of smaller tools each with a restricted set of discrete functions. This isn't a capability difference, it is a completely different philosophy on how CLI toolkits should work, and I would remind you that this philosophy has been in use for over forty years, and its merits have been proven time and time again. If you need to alter the output of one tool before passing it on to another, you have a number of commands that will do the job.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    29. Re:Q and A Time: What can Powershell do... by Espectr0 · · Score: 1

      I have, and their syntax seem like you are reading some perl code. It's hard to understand what the script does by just looking at it unless you are a sed/awk guru. The powershell commands can be understood even if you don't know anything about them, and can be quite shorter to boot. I don't have an example handy (i read some on a powershell book), but powershell's main feature is that everything is an object, therefore you can expose their methods/properties and have some great features. In bash, everything is just... text...

    30. Re:Q and A Time: What can Powershell do... by Anonymous Coward · · Score: 0

      while() { $_; };
      automagically reads from the stdin and files given as first arguments

      Also, {$_;} looks like a battered housewife.

    31. Re:Q and A Time: What can Powershell do... by samjam · · Score: 1

      in bash:

      while read i
      do ...
      done filename

  20. How does it compare? by Immerman · · Score: 1

    So, anyone with real experience want to weigh in on how Powershell compares to the Linux command line? I've only used it a bit, and nothing has really jumped out at me as more than an incremental improvement over (pseudo-) DOS. Basically - is this something that might actually be valuable to -nix admins, or is it just a way for Windows admins to leverage their existing skills when managing -nix systems?

    Either way I'm kind of surprised Microsoft is doing this - seems like the biggest effect would be to make it easier for competing systems to worm their way into a traditionally Windows organization. Seems counterproductive, especially in light of the increasingly abusive behavior we're seeing with Windows.

    Unless of course this isn't actually open source - I didn't see any mention of the license, and it would hardly be the first time Microsoft has attempted to poison OSS projects with unlicensed code.

    --
    --- Most topics have many sides worth arguing, allow me to take one opposite you.
    1. Re:How does it compare? by LichtSpektren · · Score: 1

      They're not really comparable. PowerShell only exists because Unix shells don't work so well with Windows' binary registry (as opposed to plaintext, which is conventional on Unix-like systems).

      I really don't see much use for PowerShell on Linux -- maybe some portability reasons for lazy Windows admins. More likely this is just some token thing for Microsoft to open source for publicity, but won't lose them any sales.

    2. Re:How does it compare? by FictionPimp · · Score: 3, Informative

      Powershell can be really powerful. Everything is a object and it allows you to easily write your own cmdlets and modules to extend the shell. No more parsing the text output of one command to create input to another. It's really very slick.

    3. Re:How does it compare? by macxcool · · Score: 4, Interesting

      I use Powershell extensively to deploy applications using Microsoft SCCM at work. I use Linux the rest of the time. Bash scripting is very suitable to the way *nix commands work. Powershell is very suitable to scripting in Windows. I find PS very easy to learn and to work in, but only because I was already familiar with concepts like the pipeline (from Linux) and objects (from python ;-). I can create a PS script to install and configure an application quickly and easily because, just as in Linux there are commands that do everything you need to do, in PS there are cmdlets that allow you to easily (for the most part) access the various subsystems of Windows. I see PS as a greatly improved, much easier way of doing what I used to struggle to do with vbscript or, a long time ago, with batch files.

    4. Re:How does it compare? by txsable · · Score: 1

      If you'll wander over to the PowerShell Github repo, the readme does state that it is released under the MIT License. Of course, they bury that info at the very bottom of the page.

    5. Re:How does it compare? by macxcool · · Score: 1

      I agree. It's not just the registry though. Everything is treated as an object in PS. I find it very easy to use. I've seen a couple of attempts to create a powershell-like, object-oriented shell in Linux. I've even tried out a couple of them, but the Linux commandline just isn't designed that way. The thing about PS for me is that I was already scripting Windows using vbscript and PS is much simpler and come with a whole host of functions (cmdlets) built in, including those that come with the server tools (Active Directory cmdlets, etc.).

    6. Re:How does it compare? by MightyMartian · · Score: 1

      Ever heard of #!/bin/sh ...

      You've been able to create sh scripts for decades, if you wanted to construct specific reusable scripts that invoked the toolkit in some specific way.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    7. Re:How does it compare? by BadDreamer · · Score: 1

      "Parsing"? What other tools have you been using?

      And the fact that everything is an object is not very helpful unless there is consistent polymorphism and iterability.

      As to easily extend the shell, you might have heard something like this:

      "This is the Unix philosophy: Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface."

      This philosophy was first written down in 1978. Good of Microsoft to finally start catching up to it. Too bad they think it's better done with proprietary object interfaces than with plain text, but maybe the next iteration will get there.

    8. Re:How does it compare? by Bobfrankly1 · · Score: 1

      "Parsing"? What other tools have you been using?

      And the fact that everything is an object is not very helpful unless there is consistent polymorphism and iterability.

      As to easily extend the shell, you might have heard something like this:

      "This is the Unix philosophy: Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface."

      This philosophy was first written down in 1978. Good of Microsoft to finally start catching up to it. Too bad they think it's better done with proprietary object interfaces than with plain text, but maybe the next iteration will get there.

      The ConvertFrom- and ConvertTo- cmdlet sets allow you to deal with a variety of text level interfaces. I'll be the first to admit they DO need to work on their XML handling, but otherwise Powershell is quite capable of speaking text when needed.

    9. Re:How does it compare? by Anonymous Coward · · Score: 0

      Yes, it makes scripting on Windows less shit in a way that works semi-consistently across different Windows environments. pinvoke FTW.

    10. Re:How does it compare? by FictionPimp · · Score: 1

      I don't think you understand me. I was a solaris and redhat admin for over a decade before moving to windows. I know what we can do with a *nix shell. Powershell has abilities that are down right hard to match simple because you are not working with text, you are working with powershell objects. This means input and output from all cmdlets is instantly usable.

      Example, let's say I need to get a list of users out of active directory that have not accessed the system in the last 30 days and deactivate them.

      Search-ADAccount -AccountInactive -TimeSpan 30.00:00:00 | where {$_.ObjectClass -eq 'user'} | Disable-ADAccount

      I don't need to try to deal with the output of these commands as text. I can simply trust that the object put out by each command is compatible with every other command.

      Let's take it a little further. I run vmware and I have developers who abandon test machines. I have installed the vmware powercli extensions to powershell. I now want to find machines that are inactive in my network and straight up delete them from vmware. These machines are 90 days inactive.

      (assuming I've already issued the command to connect to my vmware environment)
      $lastSetdate = [DateTime]::Now - [TimeSpan]::Parse("90")
      $computersToDelete = Get-ADComputer -Filter {PasswordLastSet -le $lastSetdate} -SearchBase “OU=Dev,OU=Servers,DC=mylab,DC=com”
      $computersToDelete | Remove-ADComputer
      Get-VM $computersToDelete | Remove-VM

      You combine this with tools like DSC and you have a very powerful toolset to manage your environment. No need for puppet and no need to try to string a bunch of random exes with their own input and output together to do something interesting. Also, because it is .NET I can do anything with it that .NET can do (for better or worse).

      *Note, these scripts were written on the fly without testing, they may contain errors*

    11. Re:How does it compare? by Anonymous Coward · · Score: 0

      I am an AC, and I am not even sure whether you are being sarcastic or not.

      But in case you are serious, "Everything is a object" is not better than "text output". If you truly think this, it shows that you simply haven't done enough work with both systems to realise how much of a clusterfuck "Everything is a object" really is.

    12. Re:How does it compare? by Medievalist · · Score: 1

      Powershell exposes extremely complex internal Microsoft Windows-specific data structures to simple manipulation, and potentially preserves your scripts' ability to manipulate those structures across operating system patches and upgrades. For example, you can change the name of a user object without having to understand the underlying kerberized LDAP data transport of AD or the actual layout of the local user data block. It absolutely rocks for simplifying system programming on Windows.

      Other than that, it's just a scripting language, nothing special. You might like the syntax more than an older, heavily accreted language like Bourne Shell, but that's just a matter of taste and familiarity really. Personally I have no trouble writing code in it, and I like Snover, he's a very bright guy who seems to have a good heart.

      Having it available on non-Windows systems is of limited utility, since linux and Mac systems don't have the Windows internal guts that Powershell is so excellent for working with. But, remember future high performance windows servers are intended to be GUI-less, stripped down kernels like Nanoserver with all management performed by remote Powershell, so this will be great for systems integration in that environment.

    13. Re:How does it compare? by BadDreamer · · Score: 1

      That sound you heard was the point whoosing right past.

      The point isn't possibility of emitting text.

      The point is:

      "This is the Unix philosophy: Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface."

    14. Re: How does it compare? by untoreh+ · · Score: 1

      Even if powershell is decent on Linux it can't be the amount of extensions and plugins that bash and zsh have

    15. Re:How does it compare? by rastos1 · · Score: 1

      Search-ADAccount -AccountInactive -TimeSpan 30.00:00:00 | where {$_.ObjectClass -eq 'user'} | Disable-ADAccount

      To get back to the topic of this discussion - how well do you expect that to run on a Powershell running on a Linux machine?

    16. Re:How does it compare? by FictionPimp · · Score: 1

      Well being that linux on azure is a huge business for MS, I think it will probably run pretty well eventually. I think at this stage MS is hoping the community does that work for them, but in the end I expect they will do it.

    17. Re:How does it compare? by Bobfrankly1 · · Score: 1

      $lastSetdate = [DateTime]::Now - [TimeSpan]::Parse("90")

      Or my favorite: $lastSetDate = (Get-Date).addDays(-90)
      Love that between Powershell and DotNet, we have multiple powerful options to accomplish tasks.

    18. Re:How does it compare? by Bobfrankly1 · · Score: 1

      Search-ADAccount -AccountInactive -TimeSpan 30.00:00:00 | where {$_.ObjectClass -eq 'user'} | Disable-ADAccount

      To get back to the topic of this discussion - how well do you expect that to run on a Powershell running on a Linux machine?

      This is day 2 of the alpha release. Even the most zealous powershell proponent would be an imbecile to expect it to work today. Although if implicit remoting is functional, that might make such a thing possible, though it *is* a workaround. I haven't updated a suitable machine to be able to install it in a linux environment yet.

    19. Re:How does it compare? by Bobfrankly1 · · Score: 1

      That sound you heard was the point whoosing right past.

      The point isn't possibility of emitting text.

      The point is:

      "This is the Unix philosophy: Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface."

      This philosophy was first written down in 1978.

      And if we all blindly stuck to something because it was written a long time ago, we'd still be offering up children to stone statues on a flaming pedestal. You're free to stick to the old ways to your heart's content. Now that there's a familiar more advanced option available, I'm free to use that. Options are a good thing, even when they don't match up with the philosophy you want to constrain them to. Don't use it. Or do. Either way, others will.

    20. Re:How does it compare? by BadDreamer · · Score: 1

      And if we all blindly reject something because it was written long ago, what we're doing is not progress, but at best reinvention. There is a reason to use text streams and not objects.

      "Those who do not understand Unix are condemned to reinvent it, poorly."
      -- Henry Spencer

    21. Re:How does it compare? by Bobfrankly1 · · Score: 1

      And if we all blindly reject something because it was written long ago, what we're doing is not progress, but at best reinvention. There is a reason to use text streams and not objects.

      "Those who do not understand Unix are condemned to reinvent it, poorly." -- Henry Spencer

      If computers ran on quotes, you'd be quite the genius. Alas, they do not.
      A wiser person would understand there is a time to use objects and not text streams. You can love your hammer all you want, but that doesn't make it a very good screwdriver. As the linux faithful love to proclaim: "right tool for the right job". If your job description doesn't line up with powershell, don't use it. But don't think you're doing anyone any good by claiming it's good for nothing because it doesn't behave as demanded by your chosen philosophy.

    22. Re:How does it compare? by BadDreamer · · Score: 1

      To generalize, the right time to use objects is when you have an object oriented language, so that you have polymorphism, iteration and extendability. I use those a lot. The right tool for the right job.

      Just providing object access does not really add much, except complexity.

      And sure, it's good for something. It's just a lot more complicated to do difficult things when constrained by provided objects and expected interaction. Specialized interfaces with limited extendability are not a step forward.

    23. Re:How does it compare? by Bobfrankly1 · · Score: 1

      To generalize, the right time to use objects is when you have an object oriented language, so that you have polymorphism, iteration and extendability. I use those a lot. The right tool for the right job.

      And you have these in Powershell, even more so since the version 5 (windows) release. I'm not sure if the linux alpha is quite there yet, but if it isn't, it will get there.

      Just providing object access does not really add much, except complexity.

      And sure, it's good for something. It's just a lot more complicated to do difficult things when constrained by provided objects and expected interaction. Specialized interfaces with limited extendability are not a step forward.

      What you seem to view as "constraint" I view as "enabling". Powershell has actually simplified many of the tasks I and others have had to tackle. Perhaps you should try using Powershell on an extended basis and learning about it before you make off the cuff observations about what it is and is not capable of. But then again, you and your quotations know far better then I do right?

    24. Re:How does it compare? by jwhitener · · Score: 1

      "No more parsing the text output of one command to create input to another."

      Why is this preferable?

    25. Re:How does it compare? by Dr_Barnowl · · Score: 1

      Not every program has well-designed output you can consume in a shell pipeline easily. Even then, to do so you're going to have to learn grep, sed, awk, head, tail, cut, a few others besides.

      Powershell packages output up neatly into objects, so you don't have to learn and use all those text parsing tools to be productive with it. Essentially it moves the burden of thinking about how to use the output efficiently onto the writer of the commandlets, where it should be, and that means that the effort is only spent once, instead of over and over again by every subsequent user of that tool having to write code to parse it's output like you do in POSIX style shells.

      It's an approach that has it's downside - if the information you want isn't neatly packaged up as a property by the author, you're going to have to work to get it, whereas with a normal tool that just spews a text-wall to STDOUT you might have a hope of finding it in there.

    26. Re:How does it compare? by netham45 · · Score: 1

      Search-ADAccount : The term 'Search-ADAccount' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.

      About that well.

    27. Re:How does it compare? by FictionPimp · · Score: 1

      You probably don't have the AD cmdlets installed. Install the RSAT tools on your desktop or try the command from a server.

    28. Re:How does it compare? by FictionPimp · · Score: 1

      Because we can expect that in powershell the output of one command is immediately useful as the input of another. Something that typically can't be done with a text based shell. Instead of "run command", "parse output into usable form of input" "run next command" You can skip that 2nd step.

      It speeds of script development and allows you to have vastly superior filtering and control of the data without the middle men.

    29. Re:How does it compare? by netham45 · · Score: 1

      I don't believe you can install RSAT on Linux. Even if you could I have no idea how PS would get an AD configuration.

  21. Want to be open minded BUT... by furry_wookie · · Score: 1

    This just seems like a very poor excuse for puppet/chef/cfengine etc... to me.

    --
    -- Given enough time and money, Microsoft will eventualy invent UNIX.
    1. Re:Want to be open minded BUT... by Nutria · · Score: 1

      Given enough time and money, Microsoft will eventualy[sic] invent UNIX.

      Have you forgotten Xenix?

      --
      "I don't know, therefore Aliens" Wafflebox1
    2. Re:Want to be open minded BUT... by Anonymous Coward · · Score: 0

      I love commenting on things I know nothing about too. Yay ! Wanna be buddies?

  22. Re:How much spyware is in it? by Anonymous Coward · · Score: 1

    If it's open source, go look for yourself.

    I see this differently. Windows 10 now has linux built in. Powershell will be usable everywhere. Microsoft stated their intentions to embrace open source, and they appear to be following through. This lets powershell compete directly against bash and perl in the education sweepstakes, and changes the buying choice from Microsoft vs linux to Microsoft and linux vs linux. History suggests that we should be vigilant and looking out for Microsoft trying to apply the 3E model again (Embrace, Extend, Exterminate), but to flat out assert that it contains spyware is disingenuous.

  23. Re:How much spyware is in it? by Anonymous Coward · · Score: 0

    OK. Not reading the articles, I get. I acknowledge that people don't even read the summaries anymore. But now we are even reading the TITLES anymore?

    Microsoft PowerShell Goes Open Source

    Look at the source. If you find spyware, there'll be fame and/or fortune coming your way.

  24. What's their angle? by DNS-and-BIND · · Score: 1

    This is Microsoft we're talking about here. Obviously, they mean to do harm with this action. What is it? They have a long track record of actions that *seem* great but turn out to have a harmful outcome (harmful to us, beneficial to themselves) years later. Does the hivemind see what this angle is? I'm not seeing it, but you KNOW it's there. This is a company that does NOT do altruism. Anything smacking of doing good for outsiders with no shareholder return would get vetoed immediately by the MBAs in management.

    --
    Shutting down free speech with violence isn't fighting fascism. It IS fascism!
    1. Re:What's their angle? by Bobfrankly1 · · Score: 1

      This is Microsoft we're talking about here. Obviously, they mean to do harm with this action. What is it? They have a long track record of actions that *seem* great but turn out to have a harmful outcome (harmful to us, beneficial to themselves) years later. Does the hivemind see what this angle is? I'm not seeing it, but you KNOW it's there. This is a company that does NOT do altruism. Anything smacking of doing good for outsiders with no shareholder return would get vetoed immediately by the MBAs in management.

      The new management means this is a very different Microsoft then the ones we've seen over the past decades. Yes, Decades. Most (if not all) of the anti-trust stuff is over 15 years old now. And no company that large EVER does altruism, Microsoft is not the anomaly you're trying to paint it as.

      The most obvious purpose of this move is that which is stated on Jeff Snover's blogpost, to enable the powershell fluent to be able to use that knowledge on more machines.

      Powershell has been primarily a language of system administration, although it IS capable of much more. Once you're used to it, you start to see where else powershell can be used, among those, Azure. "I can admin windows, linux, mac and my azure VMs with a single language" can be a powerful selling point. Doesn't mean bash is going anywhere, it simply opens up more options for those who want to use it. Which is opposite of the "closing down other options" mentality that we saw from Microsoft in the past.

    2. Re:What's their angle? by MightyMartian · · Score: 1

      But, as we are constantly informed by Powershell advocates, Windows is object oriented, so bash won't work on Windows. And yet, apparently, text-oriented *nix will be administered by Powershell? Methinks maybe Windows object nature has been somewhat oversold to justify why Powershell ended up so different than the most used shell scripting language family ever developed.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    3. Re:What's their angle? by Bobfrankly1 · · Score: 1

      But, as we are constantly informed by Powershell advocates, Windows is object oriented, so bash won't work on Windows. And yet, apparently, text-oriented *nix will be administered by Powershell? Methinks maybe Windows object nature has been somewhat oversold to justify why Powershell ended up so different than the most used shell scripting language family ever developed.

      I think you're oversimplifying things. Making object oriented constructs output text is much easier then making text oriented constructs output objects. Also, comparing it as "the most used shell scripting language family ever developed" to an alpha product just released today is a bit much. After all, today IS the first time they can run in the same environment. Lets see where things are in 5-10 years. "Different" isn't always a bad thing, and perhaps after some time has passed, you'll be complaining about how Google's new terminal doesn't do things like powershell.

      Yes I know that's quite a reach, but if it happens, I'll try to be awake to poke you over it :P

  25. Powershell is crap by Anonymous Coward · · Score: 0

    Powershell is horrible. It has some great stuff, don't get me wrong - the ease of using any .Net component from a script is interesting. But the haphazard nature of it means spending more time debugging and understanding obscure things about why it does things the way it does. I was using it for Azure scripting, but I've been burned so many times by it (and how crappy the Azure cmdlets are) that I've just gone to C# and .Net and the Azure REST APIs so I don't have to bend myself into contortions to do simple things and get deterministic results. Plus I can take advantage of things like generics, the TPL and collections in general which make my life a lot easier and more productive.

    I can see using .Net core and C# on Mac or Linux. Powershell - no way.

    1. Re:Powershell is crap by Bobfrankly1 · · Score: 1

      Powershell is horrible. It has some great stuff, don't get me wrong - the ease of using any .Net component from a script is interesting. But the haphazard nature of it means spending more time debugging and understanding obscure things about why it does things the way it does. I was using it for Azure scripting, but I've been burned so many times by it (and how crappy the Azure cmdlets are) that I've just gone to C# and .Net and the Azure REST APIs so I don't have to bend myself into contortions to do simple things and get deterministic results. Plus I can take advantage of things like generics, the TPL and collections in general which make my life a lot easier and more productive.

      I can see using .Net core and C# on Mac or Linux. Powershell - no way.

      This is a problem with any language, you can have bad implementation anywhere. Even within Microsoft you can see different teams have different levels of buy-in with powershell. The core cmdlets have a level of polish that isn't frequently seen elsewhere, but many of the other teams have made a decent effort to support powershell with modules that cover a large number of use cases.

  26. Re:How much spyware is in it? by mlw4428 · · Score: 2

    If it's open sourced it can have the same amount of spyware the Linux kernel has if not less.

  27. bash by ichthus · · Score: 1, Funny

    Nah, we're good. But, thanks anyway.

    --
    sig: sauer
  28. AWESOME! by furry_wookie · · Score: 1

    This is awesome because only a linux fanboy would not see that:

    Get-ChildItem -Recurse | Select-String 'hole_in_the_ground'

    is sooooo soooo much better than

    grep -r 'hole_in_the_ground' /sarcasm

    --
    -- Given enough time and money, Microsoft will eventualy invent UNIX.
    1. Re:AWESOME! by Anonymous Coward · · Score: 1

      grep -r 'hole_in_the_ground' /sarcasm

      You're mixing your Linux and Windows command line switches.

      grep -r --sarcasm "hole_in_the_ground"

    2. Re:AWESOME! by The-Ixian · · Score: 2

      gci -recurse | sls 'hole_in_the_ground'
      grep -r 'hold_in_the_ground'

      Difference of about 10 characters.

      Also... there is tab complete in PS just like in bash so....

      Although, unlike in bash, tab completion also works for command line parameters as well so you wouldn't need to type all of "-Recurse" you would just need to type "-R" and then hit Tab once. so now the difference in keystrokes is fairly minimal.

      --
      My eyes reflect the stars and a smile lights up my face.
    3. Re:AWESOME! by Anonymous Coward · · Score: 0

      Although, unlike in bash, tab completion also works for command line parameters

      Fail. Tab-completion has worked for bash command line parameters for years, and I'm reminded of that every time I execute 'git checkout br' and get a list of all branches beginning with 'br'.

    4. Re:AWESOME! by Anonymous Coward · · Score: 0

      He's talking about autocomplete on the flag arguments to the command, not naked filenames

  29. Re:How much spyware is in it? by Hylandr · · Score: 1

    Patterns have a habit of repeating themselves. Assuming anything less is not a sustainable pattern.

    --
    ~ People that think they are better than anyone else for any reason are the cause of all the strife in the world.
  30. Slashdot Commentor by Merk42 · · Score: 1, Insightful

    M$ Is evil! They don't make programs for Linux!! It's all a ploy to force people to use Windows!!
    M$ is evil! They are making programs for Linux!! It's all a ploy to force people to use Windows!!

    1. Re:Slashdot Commentor by Anonymous Coward · · Score: 0

      M$ Is evil! They don't make programs for Linux!!

      In 15+ years on Slashdot, I don't recall a significant demand for M$ developed software to be ported to Linux (except for perhaps some games?)

    2. Re:Slashdot Commentor by DNS-and-BIND · · Score: 2

      How about letting actual Slashdot commentErs make the comments instead of building a ridiculous strawman? +4 Insightful, really?

      --
      Shutting down free speech with violence isn't fighting fascism. It IS fascism!
    3. Re:Slashdot Commentor by Holi · · Score: 2

      And Office, and after seeing all the attempts at replicating it, Exchange.

      --
      Sorry, teleporters just kill you and then make a copy. A perfect, soul-less copy.
    4. Re:Slashdot Commentor by Bobfrankly1 · · Score: 1

      How about letting actual Slashdot commentErs make the comments instead of building a ridiculous strawman? +4 Insightful, really?

      And by "actual slashdot commentErs" you mean linux zealots? The comment was on target and recognized as such.

      It seems that having an open mind and a balanced view is a crime in the eyes of many on slashdot. "Either you're with me or against me" makes for entertaining movies, but dysfunctional IT/Development teams.

    5. Re:Slashdot Commentor by DNS-and-BIND · · Score: 1

      Responding to a complaint about a strawman agrument by constructing yet ANOTHER argument out of straw? "having an open mind and a balanced view is a crime"? WTF? Who said this? [citation needed]

      You have zero self-awareness, don't you?

      --
      Shutting down free speech with violence isn't fighting fascism. It IS fascism!
    6. Re:Slashdot Commentor by phantomfive · · Score: 1

      If someone is evil, then what they do is evil.

      --
      "First they came for the slanderers and i said nothing."
    7. Re:Slashdot Commentor by Bobfrankly1 · · Score: 1

      Responding to a complaint about a strawman agrument by constructing yet ANOTHER argument out of straw? "having an open mind and a balanced view is a crime"? WTF? Who said this? [citation needed]

      You have zero self-awareness, don't you?

      Hello pot, this is the kettle speaking. That quote you made was my statement, not a citation. It was addressing your aggression over what you believed to be a strawman argument. Whether you are ignorant of the past, or refuse to acknowledge it, it doesn't change the fact that he pointed out a long running complaint of the linux community. He's bringing it up now to point out the hypocrisy in those who simply state "M$ Evil" or "EEE". It's argument is relevant because it points out that the claimed reasons don't matter, Microsoft is evil in their minds.

      Or perhaps you are confused what a strawman argument is. OP went directly to the root of the debate, and addressed it there. You call it "ridiculous", but it's a statement that was thundered by the linux faithful all the way back to when Microsoft was in it's heyday. Care to take another swing, or does trolling lose it's luster when it requires your brain?

    8. Re:Slashdot Commentor by Anonymous Coward · · Score: 0

      Anti-corporatism is quite the trend around. People really need to put themselves in their shoes to make constructive criticism, rather than throwing the usual "they're just bad, down with them" tantrum.

    9. Re:Slashdot Commentor by Dr_Barnowl · · Score: 1

      Cringely opined that MS should build it's next desktop environment and shell on top of Linux in 2003 :

      http://web.archive.org/web/200...

      But other than that.. yeah, not much call for it, except from the creative types who want their tools (Photoshop, mostly) on a decent OS.

  31. Too little, too late. by Noryungi · · Score: 0

    After years of insults and demeaning comment,s Microsoft suddenly realizes:

    1. That Linux (and open source) has won (see AWS, any successful start-up in the past 5 years).

    2. That lean command-line tools are probably a lot more efficient to manage servers than a GUI (see also: OpenSSH, coming soon to a Windows server near you... finally).

    Now, let me say this: Dear Microsoft, I already know bash and ksh. I have no need for a bloated, incoherent new shell on my machines.

    I know you mean well, thanks, but no thanks. As far as I am concerned, I will never, ever, use your OS ever again.

    Now, let's go back to the subject (err... flame war) at hand: systemd. What the fsck? ;-)

    --
    The right to offend is far more important than the right not to be offended. (Rowan Atkinson)
    1. Re:Too little, too late. by sconeu · · Score: 2

      Clearly PowerShell is intended to manage systemd.

      --
      General Relativity: Space-time tells matter where to go; Matter tells space-time what shape to be.
  32. Re:How much spyware is in it? by kheldan · · Score: 0

    Apparently someone doesn't comprehend sarcasm, or how richly Microsoft deserves all the sarcasm that gets directed at it. Do you have problems comprehending irony, too? Or people's facial expressions and moods? I think it likely.

    --
    Are YOU using the TOOL, or is the TOOL using YOU? Think about it!
  33. 44MB source code by Gravis+Zero · · Score: 1

    ok seriously, does anyone else know of any shell that not only needs an entire framework install but also has 44MB of shit in it's source code?

    --
    Anons need not reply. Questions end with a question mark.
    1. Re:44MB source code by 93+Escort+Wagon · · Score: 5, Funny

      ok seriously, does anyone else know of any shell that not only needs an entire framework install but also has 44MB of shit in it's source code?

      Well, you need to understand that unix-based versions of powershell are actually being implemented through emacs.

      --
      #DeleteChrome
    2. Re:44MB source code by Anonymous Coward · · Score: 0

      I looked at the source, it contains about 3 times the word "PowerShell" on every lines, even on the lines without any code. All source files aslo start with names like: Microsoft.PowerShell.WaitForIt.Code.PowerShell-subsystem.Implementation.c (that last half of the filename is invisible on github but doesn't really tell you anything anyway.)

    3. Re:44MB source code by Anonymous Coward · · Score: 0

      ok seriously, does anyone else know of any shell that not only needs an entire framework install but also has 44MB of shit in it's source code?

      emacs?

      ducks ;^)

    4. Re:44MB source code by Anonymous Coward · · Score: 0

      I usually don't have a hard time detecting sarcasm, but [nothing against emacs] I wouldn't be surprised to see M$ implement a FOSS solution this way

    5. Re:44MB source code by Anonymous Coward · · Score: 0

      systemd

  34. Azure, Exchange SQL et al by bernywork · · Score: 5, Interesting

    The reason for doing this I thought would have been obvious, but from the comments it doesn't seem so.

    No Linux admin, who administers standard Linux bare metal or VMs is going to install this, not in a million years, they've got bash scripts with GNU utils, or they learnt Python or Perl or something else years and years ago, they've no use for PowerShell...

    If however, you use Azure (MS *are* the second largest cloud computing provider), and you want to do web scale, Microsoft either needs to start giving out Perl and or Python modules, or they need to get PowerShell on Mac / Linux for people to be able to script their Azure / SQL / Exchange instances so that the admins and devs can integrate with Chef and everything else out there.

    With the amount of work that's gone into Powershell for it to be an admins platform, it's *easier* to port Powershell to Linux than what it is to rebuild powershell for Python or Perl or whatever else.

    --
    Curiosity was framed; ignorance killed the cat. -- Author unknown
    1. Re:Azure, Exchange SQL et al by Anonymous Coward · · Score: 0

      They'll find a use for it. And if somebody does, and these crusty GNU types refuse to adapt, they'll be replaced with younger, less idealistic workers who do not pluck the forbidden fruits & eat from their own toes at conferences.

    2. Re:Azure, Exchange SQL et al by Anonymous Coward · · Score: 0

      You mean like this?
      https://azure.microsoft.com/en-us/develop/python/

    3. Re:Azure, Exchange SQL et al by Anonymous Coward · · Score: 0

      about this part ... (MS *are* the second largest cloud computing provider)
      It *is* true, but is like saying my kind came out second in the class grades... How many kids were in the class? Ans: 2

    4. Re:Azure, Exchange SQL et al by bernywork · · Score: 1

      This unfortunately doesn't come anywhere near the functionality of PowerShell..... Powershell can manage into Windows evironments and with the ecosystem of admins out there posting powershell cmdlets and, well just powershell commands on how to do stuff, there isn't as much out there for people to start python over powershell.

      --
      Curiosity was framed; ignorance killed the cat. -- Author unknown
    5. Re:Azure, Exchange SQL et al by bernywork · · Score: 1

      Google, RackSpace and a million and one shell / VM providers....

      Microsoft has a large chunk of the market because they aren't Amazon (Redundancy) also, because people got burnt by their pricing in the early days.

      --
      Curiosity was framed; ignorance killed the cat. -- Author unknown
  35. Good and Bad by SirAudioMan · · Score: 1

    Good because if it's truly open source, decent coders and groups can fork it, fix all the poorly designed and coded bugs...I mean 'features' it has.

    Bad because...Microsoft, stay the hell away from Linux. MS makes everything it touches worse, introduced more bugs and security holes.

    1. Re:Good and Bad by Bobfrankly1 · · Score: 1

      Good because if it's truly open source, decent coders and groups can fork it, fix all the poorly designed and coded bugs...I mean 'features' it has.

      Bad because...Microsoft, stay the hell away from Linux. MS makes everything it touches worse, introduced more bugs and security holes.

      The vast majority of bugs and security holes that are exploited on Windows machines there because flash and/or java are installed on most of them. Hate M$ all you want, but put the blame where it belongs.

    2. Re:Good and Bad by MightyMartian · · Score: 1

      Yes, on Internet Explorer.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    3. Re:Good and Bad by Bobfrankly1 · · Score: 1

      Yes, on Internet Explorer.

      You actually made a comment that I can almost agree with. Color me shocked! :D

    4. Re:Good and Bad by dbIII · · Score: 1

      Flash and Java are on Mac, linux and all over the place but malware is almost exclusively on the MS platform.
      It's very clear where the blame lies. Lazy developers writing insecure shit for the MS platform. At least the days of "our application can only run as Admin" are over for 95% of application software.

  36. Phase 2 under way by Anonymous Coward · · Score: 1

    "extend".

    And people fall for it every time. Idiots.

  37. It's a Feature by Anonymous Coward · · Score: 0

    Now Linux and Mac users can get reminders to "Upgrade" to Windows 10 like everyone else.

    Seriously though, the existing Linux shells are much easier and more powerful than Powershell.
    Sadly, I have to use Windows at work and try to get Powershell to do specific things and I feel like it's HAL saying "Sorry, I can't do that, Dave."

  38. Oh boy by Anonymous Coward · · Score: 2, Interesting

    Has anybody looked at the .net open source to confirm if Microsoft code is actually quality or just lucky shit that just runs? Do developers(including contractors) hired by Microsoft code better than Open Source people?

    Stupid questions, but, I read somewhere that someone at MS stated they just push code that works but does not necessarily mean all the bugs have been worked out.

  39. Dear Microsoft, by Anonymous Coward · · Score: 0

    Fuck off with your bullshit.

    Kthxbai..

  40. Not likely to see any adoption by Anonymous Coward · · Score: 0

    Powershell simply isn't good as either a scripting language, or as a programming language. It strikes the wrong balance between the two, and hence will never see any adoption outside windows land, where it will still only be used by people who don't know any better.
    Why wouldn't you choose python over it? or even bash? it makes no sense to depend on something non-standard - particularly something that has a whole stack of dependencies, isn't simply isn't nice to use.

  41. I am not a regular powershell user but it is frust by ChrisBrooking · · Score: 1

    I am not a regular powershell user but it is frustrating that when I do use it I have to use a whole new object notation. Yes you can load from XML or json strings but it's native notation is quite obscure. Also, the "when to quote, when not to quote" is even more arcane than bash, sometimes having to inckude a command and parameters in quotes, sometimes not. I readily admit that this has been trial and error for me.

  42. PS on Linux? Awesome! by Anonymous Coward · · Score: 0

    We can use PS until ultimately MicoFail will phase it out like it does everything else it designs. Who are they fucking kidding??

  43. Spotted the millenial by Anonymous Coward · · Score: 0

    Old doesn't always equate to outdated or useless. Bash is perfect for the jobs it was designed to handle, and for the jobs it doesn't handle well, you already have other tools which are perfect for more complex jobs. The more complex your program needs to be, the less you want shell scripting (bash or otherwise). Shell scripting is for system administration, quick hacks, or small one-purpose programs where even python is overkill. Shell scripting shines when your work is focused on the command-line and especially when you're gluing together other command-line tools to quickly solve a problem. There is no simply better tool for that job, because the tool has more or less been perfected with little to no room for improvement. Sure, there are quirks, but if you ask me that is simply the nature of shell scripting, where the same interpreter that reads your command-line input is parsing your script.

    Bottom line: bash is still in widespread use today because it's the right tool for certain jobs, and that's not going to change anytime soon. The same could be said for unix in general. If you're not a system administrator this probably isn't immediately apparent, but if you were, I can assure you that you wouldn't be "searching for something better".

    1. Re:Spotted the millenial by brantondaveperson · · Score: 1

      Shell scripting is for system administration, quick hacks,

      Which, of course, explains how most of the underpinning of Unix configuration is indistinguishable from a quick hack.

  44. Re:How much spyware is in it? by bondsbw · · Score: 2

    Do you have problems comprehending . . . people's facial expressions and moods?

    In a text thread? Not at all.

    --
    All my liberal friends think I'm a conservative, all my conservative friends think I'm a liberal.
  45. Makes Sense by Anonymous Coward · · Score: 0

    Look, the cloud is Microsoft's way of the future. Future versions of the desktop will be totally integrated into the cloud and future servers will only be cloud based.

    The only major hindering block to that end is that people are using Open source OS more and more today. And that's not likely to change in the future. So my guess is that Microsoft is planning to make their own distro of Linux in the near future that will be totally integrated into their cloud infrastructure as well as integrate into their enterprise infrastructure such as Active Directory. Which for the bigger environments out there may be better than what they have now.

    I wouldn't be surprised in the least if in that distro, you had the Microsoft app store well integrated too - hell the apps will probably be able to run seamlessly across distros. In the end Microsoft won't care which OS you're running - so long as it's in the Microsoft umbrella.

  46. Just say "NO!" by Anonymous Coward · · Score: 0

    Linux and Mac availability is for Softies, not the rest of us.

  47. Oh Boy! by Anonymous Coward · · Score: 0

    Garbage I never knew I needed.

  48. Re:How much spyware is in it? by clubby · · Score: 1

    Microsoft stated their intentions to embrace open source, and they appear to be following through.

    My sweet summer child, I used to be you. Bless your heart. Offering the benefit of the doubt is a noble and generous act.

    History suggests that we should be vigilant and looking out for Microsoft trying to apply the 3E model again

    Wait, so you know about this shit? You know they have a history of dishonesty and bad faith? I'm afraid I must now take a less charitable view of that first thing I quoted.

  49. Preparation by slapout · · Score: 1

    This is probably something they are doing in preparation to bringing SQL Server (and maybe Exchange) to other platforms. There server apps tend to be managed using PowerShell

    --
    Coder's Stone: The programming language quick ref for iPad
  50. Re:How much spyware is in it? by Anonymous Coward · · Score: 2, Informative

    The dotnet core dev tools have telemetry built in and you are automatically opted-in. It can be turned off, but in typical MS fashion they slid it past everyone hoping it wouldn't be noticed. It's perfectly rational to suppose that the PS port has telemetry reporting features in it. I would assume it does and so should everyone else.

  51. fear the GrEEKS, even if bearing gifts! by s3cr3to · · Score: 1

    Fear the GrEEKS, even if bearing gifts!

  52. Re:Apple is the New Microsoft by Anonymous Coward · · Score: 0

    >something that was anathema to them

    Word of the day toilet paper?

  53. VB-Script? by Tablizer · · Score: 1

    Most our org's PS scripts are in VB-Script. Is there an interpreter for it on Linux?

  54. Gross... by Anonymous Coward · · Score: 0

    That's about all I can say.

  55. SHIT ON IT ==FBI== SHIT ON IT == FBI == SHIT ON IT by Anonymous Coward · · Score: 0

    Never use anything Microsoft, especially on Linux.

    Keep all spyware off of Linux. It is almost 100% like that, with Debian being FBI now it is not 100%.

    You can use old Debian and never update it.. 2.6.x kernels, but there are better. I like Arch (especially Blackarch), opensuse, and the BSD's.

  56. Re:How much spyware is in it? by phantomfive · · Score: 1

    Microsoft got jealous that systemd was having all the fun?

    --
    "First they came for the slanderers and i said nothing."
  57. In other news... by Anonymous Coward · · Score: 0

    In a moment of cross-promotional marketing genius, the Catholic church will be offering free cattail whips suitable for self-flagellation to early embracers of PowerShell on Linux.

  58. Re:How much spyware is in it? by Anonymous Coward · · Score: 0

    In this thread: a bunch of fucking sperglords who can't into sarcasm or irony.

  59. Re:How much spyware is in it? by Darinbob · · Score: 1

    Solves some problems maybe. Such as the Microsoft oriented IT people who are finding more and more work is moving to Linux, Macs, and other Unix systems, and their only job qualification is having a powershell certificate that is seen as worthless paper to everyone outside of Windows.

    But seriously, there are people who think that way. They find themselves becoming irrelevant but want to carry over their old skill set if they move to anything new.

  60. Trap by Anonymous Coward · · Score: 0

    It's a trap!

  61. Driving PS from python by John+Allsup · · Score: 1

    With the bash on windows and ps on Linux, being able to drive ps from python will be looked forward to. As a replacement for bash or python it sucks, and works completely differently. On the other hand, a python module permitting one to programmattically generate and run ps scripts, and receive what comes back would be welcome.

    --
    John_Chalisque
  62. WSL by Anonymous Coward · · Score: 0

    Nice. And it works fine on Ubuntu running on Windows Subsystem for Linux on Windows 10.

  63. PowerShell's Powerful? by Anonymous Coward · · Score: 0

    Meanwhile, people who are used to working on those platforms will have access to a new and very powerful tool for getting work done.

    No, not really. The management modules in PowerShell are what makes it useful and most of those are just wrappers around Windows-specific functionality. e.g.: Disk and Partition management are WMI wrappers; User and Group management are AD wrappers; etc. So the "powerful tool" parts of PowerShell don't exist on non-Windows platforms.

  64. Re:How much spyware is in it? by TemporalBeing · · Score: 1

    If it's open sourced it can have the same amount of spyware the Linux kernel has if not less.

    Hard to have less since LK has none.

    --
    Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
  65. XML by mcswell · · Score: 1

    I do a lot of XML processing on Linux--in fact, I'd say 80% of my work is with XML. While XML files are obviously text, handling them as plain text is an invitation to disaster. They're really much more like objects, and I mostly use Python when I want to process XML. (For some simple manipulation, I use xml_grep, but only for quick-and-dirty tasks.) Usually I read the XML stream into Python (using SAX or DOM, depending), and convert the parts I need into Python objects for further manipulation. The traditional Linux shell commands (which I use lots for the remaining 20% of my work) are just not suited for XML.

    I've never used PowerShell, and the fact that it manipulates objects is interesting. Would some users like to comment on whether it's suited for processing XML?

    1. Re:XML by MightyMartian · · Score: 1

      What about programs like xmllint?

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    2. Re:XML by mcswell · · Score: 1

      I've used it for schema validation, not much else. I looked it up just now and saw that it has a --shell option. I wasn't aware of that, guess I should look at it.

      Another programming language for xml is xslt, but IMHO it's the worst programming language ever (I prefer FORTRAN). Of course YMMV.

    3. Re: XML by Anonymous Coward · · Score: 0

      It's very capable of dealing with XML. I'm a C++ dev that dabbles in many other languages. PowerShell is extremely capable, simple to pickup, but it has taken me a long time to master. When writing robust (full error handling, what-if, etc) modules it be becomes a bit more verbose than I'd like, but I still love working with it. You have the full .NET framework at your fingertips if there isn't a native PowerShell cmdlet to accomplish your goal. It isn't even difficult to make native API calls. If your just using it command line, it can do an amazing amount of work in one line. There really is no limit to what you can do with it (on Windows at least). Though occasionally it gets awkward, I have never come across anything I can't do in PowerShell.

    4. Re:XML by nyquil+superstar · · Score: 1

      Yup, it's pretty good at it. Plenty of examples out on the web.

  66. Lennart Poettering is flabbergasted! by Anonymous Coward · · Score: 1

    The Debian commitee members will probably vote for Microsoft PowerShell to replace Bash.

  67. I want both worlds merged by swb · · Score: 3, Interesting

    I want to run Powershell commands within a bash shell and be able to pipe their output to Unix utils, and I want to be able to run Unix utils in Powershell and pipe their output to Powershell commands.

    I want to be able to mix and match them somehow.

    Mostly, I think, the Powershell commands would be most useful paired with a bash shell and Unix utils, at least how I end up needing/wanting to use Powershell most of them time -- which I freely admit is biased by much more experience at a Bash prompt than a Powershell one, and mostly using Powershell commands to generate some kind of output that I want to work with Bash-style.

    I recognize that merging them would be complex in some ways, as many Powershell commands return objects not output and the shell is just doing basic formatting of the object as textual output.

    But maybe there could be some kind of hydbrid mode pipe operator that would just do the basic console output it would normally do, but send it to an instance of a Bash environment, or some way to access Powershell cmdlets from within bash as if they were normal programs that provided output.

    1. Re:I want both worlds merged by dbIII · · Score: 1

      Just use Perl or Python.
      This thing is just a subset of Perl with weirder syntax.

    2. Re:I want both worlds merged by Anonymous Coward · · Score: 0

      the word you're looking for is JSON

  68. Worse than AppleScript by Anonymous Coward · · Score: 0

    AppleScript was the Apple version of VBScript (I believe it still exists) but it was so quirky and buggy that only a few experts with years of experience (many at Apple) really used it for nontrivial things. It was useful if you you could find a prewritten script to do what you wanted, with support when the next point release of the OS or the target programs broke it. Anything sound so familiar?

    PowerShell flat out sucks. It's not a bad idea, but it's so badly done and so hard to use it's just not worth it. I had to write part of a script library when I was first at M$, and it was sheer torture.

  69. rofl by Anonymous Coward · · Score: 0

    m$ shills forward!

  70. systemd will immediately adopt it by Anonymous Coward · · Score: 0

    to replace shell scripts because Poettering said so

  71. Exchange 97 to Exchange 2010 by nuckfuts · · Score: 1

    Wait till you see Exchange Server 2016. It's still chock full of gotchas, but with a completely new (web-based ) management interface. the PowerShell-based management shell is still there, however, and remains the best way to manage things.

    Management issues aside, Exchange is a useful product. Synchronization of e-mail, contacts, and calendars with iOS and Android smartphones is supported out of the box, and Outlook Web Access is the best webmail implementation I've seen.

    My main issue with it is that Jet databases are fragile. Had they implemented SQL Server as the back-end, it would be far more resilient.

  72. Now you can PwnAllTheThings! by Anonymous Coward · · Score: 0

    so sorta like java, write once, own everywhere? or is that just docker?

  73. What? by Anonymous Coward · · Score: 0

    The whole time Microsoft was trying to kill the shell, they had one Linux guy pushing hard his whole carer to make the shell relevant again. This is the one project that did great things in spite of Microsoft. That same guy just ensured that it was open sourced. In his big launch demo today, he had people from AWS and VMWare showing their Powershell tools running on OSX and Linux. This guy has been anything but typical Microsoft and really worked with the community to build Powershell into what it it is today. He was the same person that tried to bring Linux services to windows back in the day and brought bash to Windows.

  74. Anyone Else Remember Windows' Perl Binary? by Anonymous Coward · · Score: 0

    Seriously: http://strawberryperl.com

    LOTS of CPAN compatibility. I've made a career on it.

  75. PS got off on the wrong foot by Anonymous Coward · · Score: 0

    The issue I had with with powershell goes back to its earliest implementation in
    Exchange 2007. I and other MS sysadmins spent years learning the intracasies of MS's wacky GUI admin consoles, and then with the release of Exchange 2007, tasks that used to take under a minute in 5.5, 2000, and 2003 required 15 minutes of googling and Technet-ing just to find the correct applet. Then when things didn't work the first run through, you had parse through the alien syntax to get the result you wanted. Most infuriating for folks who spent the early 2000s in 5.5 to 2003 environments was the fact that a lot of stuff that was available in the GUI exchange management console was flat out missing in the 2007 GUI EMC. It put a lot of folks in a tough spot that first year. But then just like any other "new" bit of tech out of Redmond, you swallow your pride (and the previous ten years of experience) and get on with your life and learn the "new" tool.

  76. Can I build the source code in WSL? by sabbede · · Score: 1

    Come on, you know you all want to try building powershell in 'Bash on Ubuntu on Windows', then open powershell, run bash from inside it and then run powershell again.

  77. More Crap from M$ by Anonymous Coward · · Score: 0

    More crap from M$. Does anybody who uses Linux actually want that gangrenous pustule?

    And no, systemd isn't even close to being as bad as powershit.

  78. How can a scripting language be more evil?. Solved by Futurepower(R) · · Score: 1

    "... worst syntax features of every scripting language..."

    My reaction exactly.

  79. Articles about PowerShell by Futurepower(R) · · Score: 2

    Articles:

    What I Hate About PowerShell

    Is PowerShell really this bad?. Quote: "... the strangest mashup of Perl and VAX/VMS I've ever seen." Another quote: "... one of the most ass-backwards, lipstick on a pig, polished turd add-ons to the Microsoft stack in recent years."

    Why Microsoft doesn't fix the long file name issues in PowerShell: Long Paths in .NET, Part 1 of 3. (Because the problem is in .NET.)

    And don't forget the very poor writing quality of the documentation.

  80. Cygwin by ebvwfbw · · Score: 1

    Instead, just install cygwin on Windows. Big improvement.