Announcement

Collapse
No announcement yet.

Microsoft Open-Sources PowerShell & Brings It To Linux

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #41
    Originally posted by torsionbar28 View Post
    That's an awfully bizarre perspective, considering the words "cloud" and "linux" have been synonymous for a while now. Google, Amazon, Facebook, Netflix, etc. all the biggest of the big are powered 100% by Linux. If you look at ANY of the popular web applications out there, they're all Linux-centric. Trying to deploy them on Windows OS is clunky, with broken functionality and a severely degraded experience. Some web applications don't even support Microsoft OS, they've given up on it.
    You're thinking of the wrong part of the cloud. Yes, a lot of big well known web sites run on Linux-based clouds - but you're completely overlooking the corporate world. Microsoft's own web offerings - Outlook, Office, Sharepoint, etc - they all run on Azure, and they have a *lot* of users. So do various enterprise apps most people have probably never heard of - the systems used by the staff at telcos, or electricity companies, or cinema chains.... these are usually web-apps these days, and Azure is a pretty popular platform for deploying them.

    Comment


    • #42
      Originally posted by Xaero_Vincent View Post
      Microsoft: "Help us bring Bash and Ubuntu's userspace to Windows and in return we'll bring PowerShell and SQL Server to Linux and grow your enterprise users by enabling our Windows customers leverage Ubuntu on Windows."
      From what I understand, Microsoft did almost all of the work building Ubuntu on Windows on their own and just negotiated with Canonical for the right to slap the Ubuntu logo on it. And it makes sense - I think Microsoft had a lot more to gain from keeping developers who want bash and Linux tools from installing Linux (or buying a Mac - I'm no Apple fan, but I see tons of developers using bash on Macs). What does Ubuntu get, besides a little bit more name recognition?

      Comment


      • #43
        Originally posted by schmidtbag View Post
        It's interesting - you could see this as Microsoft's way to help transition Linux users (particularly servers) to Windows. But, this could easily work the other way around too.
        Yeah, I can just see the resume of this laid off mcse applying for a junior linux admin job: "fluent in power shell!"

        uh yeah.. if you could just go ahead and learn bash... that'd be greeaat. And go on ahead and learn perl, ruby or python too.... thaaanks.

        Comment


        • #44
          Originally posted by starshipeleven View Post


          It seems one of the main reasons PS is loved in the Windows world is its ability to pass around objects, not just strings, and its tight integration with Windows.

          Python is able to do it too, but I have no idea about how better it is at this. I suspect it is better.

          Here a comparison of basic things python vs powershell https://mohd-akram.github.io/2013/05...-to-powershell
          The "tight integration with windows" is pretty much a non-starter for a Linux admin. I can't imagine python being any less capable, and it runs everywhere.

          Comment


          • #45
            Originally posted by chithanh View Post
            I think PowerShell is not simple enough to compete with bash for simple tasks.
            And it is not capable enough to compete with Python for complex tasks.

            It sits in some kind of weird no man's land between bash and Python, trying to unify a shell with an object oriented scripting language, but the resulting monstrosity is neither a good shell nor a good scripting language. (Not totally unlike Microsoft's attempt to marry phone and PC user interfaces.)

            The remaining use case for PowerShell on Linux is to migrate existing business logic from Windows to Linux. Not sure if Microsoft had that in mind when they made the announcement...
            I agree with this.

            Powershell was somewhat interesting on Windows when it came out. Not only did it not really have much competition (on windows, since bash, etc. are much tougher to get working there) it tried going in a different direction and using objects instead of just piping strings.

            However, in practice it just hasn't turned out to be that great. It does have some nice integration with certain things in Windows, but for the most part I wouldn't recommend trying to use it.

            The only reason to use it on linux IMHO is to bring over existing scripts you may have from prior Windows use that you want to use now that they are supporting asp.net and other stuff on linux, without being forced to port it all.

            Comment


            • #46
              Microsoft Operations Management Suite - That's part of the play here. Read 1/2 down the Azure blog post. They didn't do this for fun or for free... they are counting on getting you onto their platform services and tools. That's where the real vendor lock in is. If you buy into their management tools and frameworks, which probably don't run on AWS, Google, etc. then they've got you.... and they know that if they don't support Linux as a first class citizen users will go to AWS, Google, etc. This is purely to make Azure more competitive and more *sticky*

              Comment


              • #47
                Originally posted by david_lynch View Post
                Yeah, I can just see the resume of this laid off mcse applying for a junior linux admin job: "fluent in power shell!"

                uh yeah.. if you could just go ahead and learn bash... that'd be greeaat. And go on ahead and learn perl, ruby or python too.... thaaanks.
                Haha well, I was thinking more in terms of existing employees in a company that is transitioning from Windows servers to Linux.

                Comment


                • #48
                  Originally posted by akincer View Post

                  That's not quite true. There are Windows admins with tons of experience with Powershell but very little with scripting tools that are more native to Linux. Those Windows admins are beginning to use Linux more than you might suspect for a variety of use cases. Giving them a familiar toolset is not a bad thing. Heck at this point I have more familiarity with Powershell due to job duties than I do Linux scripting just by nature of the "9 to 5" use. I've written HUGE automation tools for our Windows servers that I'd love to easily port to Linux without complete rewrites.

                  Also -- if they're truly open sourcing, then by definition it isn't proprietary.
                  Do you understand what you have written in the post ? Let me translate:

                  "It's good that MS is porting Powershell to Linux because now I can leverage my years of Powershell experience and a stack of tools that I want to use with no or little rewrite on a platform that works completely differently to the platform the tools are written for."

                  Does that sound correct ? Powershell in this case is just another scripting language. You still have to learn the platform (Linux) and the tools that it uses to make things work. That means a complete rewrite of your existing tools anyway.

                  There's no benefit to having Powershell on Linux.

                  Comment


                  • #49
                    Well, if nothing else, now you can use powershell inside linux layer on windows. Anyways, props to open source team guys at MS.

                    Comment


                    • #50
                      Originally posted by akincer View Post
                      You just have to be willing to dig deep to figure out how to do things and lean heavily on existing library classes to get super fancy.
                      Not only if you want to get super fancy. One of my biggest gripes with PowerShell (besides the bloat and ungodly startup times thanks to every application needing an object parser) is that even very simple tasks require you to memorize complex commands and their syntax.

                      Quoting myself from an earlier thread:
                      Originally posted by chithanh View Post
                      It doesn't suck in the sense that you cannot get stuff done with it. But it is sometimes really annoying.

                      What bothers me is that you often have to remember obscure and complex commands to do the most simple things. Example: How to compute the SHA1 checksum of a file.

                      Linux:
                      Code:
                      $ sha1sum < filename
                      Windows PowerShell:
                      Code:
                      C:\> Get-FileHash -Path filename -Algorithm SHA1

                      And to top that off, if you want e.g. SHA3 instead you are currently out of luck on Windows, while on Linux you just use sha3sum. Maybe SHA3 will come with the next version of PowerShell, which in turn may or may not come to Windows 7...
                      And in the meantime things got even worse. Now they are adding ssh support to PowerShell. It is a shell, not a crypto provider or a communications tool for crying out loud!

                      Originally posted by akincer View Post
                      For what the real bread and butter Powershell is meant for -- i.e. system management -- it does VERY well. About the only thing I've run into that's annoying is its inability to deal with filepath names that exceed the standard limits. It's also SUPER slow on some tasks such as enumerating all the files in a drive, but you can leverage external programs to fill in the gaps (i.e. using robocopy).
                      I think if you added dbus function to bash, you would arrive at something similar to PowerShell. Why does nobody do that? Because it would result in a mess. In the very rare case where one would need to talk dbus from a bash script, one would just call dbus-send etc. and keep all others free from that bloat.

                      If I want to pass objects around, I use Python.
                      If I want to do very simple tasks that at most require regular expressions on strings, I use bash.

                      Comment

                      Working...
                      X