Slashdot Mirror


Microsoft Releases PowerShell DSC For Linux

jones_supa writes: Microsoft is announcing that PowerShell Desired State Configuration (DSC) for Linux is available for download in form of RPM and DEB packages. DSC is a new management platform that provides a set of PowerShell extensions that you can use to declaratively specify how you want your software environment to be configured. You can now use the DSC platform to manage the configuration of both Windows and Linux workloads with the PowerShell interface. Microsoft says that bringing DSC to Linux is another step in the company's "broader commitment to common management of heterogeneous assets in your datacenter or the public cloud." Adds reader benjymouse: DSC is in the same space as Chef and Puppet (and others); but unlike those, Microsofts attempts to build a platform/infrastructure based on industry standards like OMI to allow DSC to configure and control both Windows, Linux and other OSes as well as network equipment like switches, etc.

265 comments

  1. Developers! Developers! Developers! by Anonymous Coward · · Score: 0

    Developers! Developers! Developers!

    1. Re:Developers! Developers! Developers! by Austerity+Empowers · · Score: 1

      No, developers don't want this. Administrators? Administrators? Administrators?

    2. Re:Developers! Developers! Developers! by Lumpy · · Score: 1, Insightful

      Only for windows admins that are forced to manage linux servers,. I can do a lot more with old linux tools than powershell have ever had the capability of.

      --
      Do not look at laser with remaining good eye.
    3. Re:Developers! Developers! Developers! by Gadget_Guy · · Score: 1

      I can do a lot more with old linux tools than powershell have ever had the capability of.

      What is it that Powershell can't do?

    4. Re:Developers! Developers! Developers! by Anonymous Coward · · Score: 0

      Microsoft alienated administrators when it forced the Metro UI into their server operating systems.

    5. Re:Developers! Developers! Developers! by goose-incarnated · · Score: 4, Funny

      I can do a lot more with old linux tools than powershell have ever had the capability of.

      What is it that Powershell can't do?

      I hear that it's incompatible with systemd

      *Ducks and runs

      --
      I'm a minority race. Save your vitriol for white people.
    6. Re:Developers! Developers! Developers! by DuckDodgers · · Score: 1

      Microsoft alienated people who weren't paying attention. Server 2012 and newer can be run without a GUI at all. It doesn't matter what they do with Metro UI, it's not a competent sysadmin's problem.

    7. Re:Developers! Developers! Developers! by Anonymous Coward · · Score: 0

      It's useful if you remote desktop into the server with a Microsoft Surface.

    8. Re:Developers! Developers! Developers! by Anonymous Coward · · Score: 1, Interesting

      It moves binary blobs around, is poorly documented, and is hated or ignored by sane people. It sounds exactly like systemd.

    9. Re:Developers! Developers! Developers! by MightyMartian · · Score: 2, Interesting

      Build a script library based on short mnemonic commands.

      Powershell's naming conventions and basic script library is insanely verbose. Man I hate that language. Damned useful, to be sure, and light years better than any Windows automation tools that came before it, but how I long for commands like sed, ls, mv, cp, head, tail, and so forth.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    10. Re:Developers! Developers! Developers! by temcat · · Score: 2

      Can't you have some sort of aliases in PS? A genuine question.

    11. Re:Developers! Developers! Developers! by Gadget_Guy · · Score: 3, Informative

      Build a script library based on short mnemonic commands.

      That's easy to do with set-alias. It already has built-in aliases for mv, cp, ls, cat, diff, echo, lp, man, ps, pushd, rm, wget and many more. Use get-alias to see the list of them.

      For the other commands you listed, I use UnxUtils. It's a lot lighter than cygwin, although the versions are very old.

    12. Re:Developers! Developers! Developers! by Junta · · Score: 4, Informative

      can be run without a GUI at all

      Not true, or else you wouldn't be able to run 'notepad' on the console. Not that this is necessarily a big deal, but the Core editions are not GUI-free, they start cmd in a window. If you ignore the graphics console and use EMS only, the GUI is still running, just not visible to you.

      --
      XML is like violence. If it doesn't solve the problem, use more.
    13. Re:Developers! Developers! Developers! by Anonymous Coward · · Score: 0

      In the Linux world, Powershell is very limited. You may think it's powerful, but it's really very weak. If you know linux well enough, you have complete control over everything including the kernel.

    14. Re:Developers! Developers! Developers! by Anonymous Coward · · Score: 2, Informative

      Last time I tried Powershell, it had one major drawback that made me stop using it. Binary output (like PNG) from one program cannot be piped to another program without getting corrupted.

      Powershell has some really interesting innovations, so I hope people give it a shot and make constructive criticisms so it can be improved.

    15. Re:Developers! Developers! Developers! by rioki · · Score: 1

      And THAT is the reason why I install msys on windows machines, just to be able to use bash.

    16. Re:Developers! Developers! Developers! by wbo · · Score: 4, Informative

      Can't you have some sort of aliases in PS? A genuine question.

      You can configure alias's quite easily in poweshell and in fact there are numerous alias's built-in for common commands. Out of the box powershell includes a ton of short alias's including "gci" and "ls" as aliases for Get-ChildItem, % is an alias for ForEach-Object, cp is an alias for Copy-Item, etc.

      You can get a list of all alias's defined using Get-Alias (or gal). You can also create an alias using Set-Alias (or sal).

      Microsoft generally encourages people to use the full command names in scripts for readability and to make them easier to maintain but there is nothing to stop you from using aliases everywhere including in scripts.

    17. Re:Developers! Developers! Developers! by godefroi · · Score: 1

      Yes. It even comes with something like 150 aliases predefined. Including ls (get-childitem), mv (move-item), cp (copy-item), and lots of others you'd expect if you're familiar with Linux.

      --
      Karma: Poor (Mostly affected by lame karma-joke sigs)
    18. Re:Developers! Developers! Developers! by Anonymous Coward · · Score: 0

      It's not about what it can't do - it's about what it takes an inordinate amount of effort to do where it's a one-liner on every other modern operating system / scripting language known to humankind.

      I really love instantiating .NET objects just to get a zip file from a web server, rather than curl http://server/path/to/file > file

    19. Re:Developers! Developers! Developers! by Gadget_Guy · · Score: 1

      The same thing in Powershell would be:

                      invoke-webrequest http://server/path/to/file -OutFile file

      or use the built-in alias:

                      wget http://server/path/to/file -OutFile file

    20. Re:Developers! Developers! Developers! by Gadget_Guy · · Score: 4, Insightful

      In the Linux world, Powershell is very limited. You may think it's powerful, but it's really very weak. If you know linux well enough, you have complete control over everything including the kernel.

      So you claim, but I have yet to hear of anything that can't be done in Powershell. Undoubtedly there will be something, but I think that most of the time when people make this claim it is because they just assume that it is the case. But when asked to back up the statement...

      Well, we can see what has happened. Just further vague claims.

    21. Re:Developers! Developers! Developers! by MightyMartian · · Score: 1

      And with a whole different argument syntax.

      I like conciseness. It's a personal preference. I use Powershell when I have to (which is fortunately fairly rare these days), admit it's significant power, particularly with Server 2012, and yet there's nothing it does that I can't do in Bash.

      And yes, I know "OBJECTS!" Don't care. I end up having to filter everything to ASCII text anyways, so I find it an irritating extra step and distraction. You like it, bully. I think it has to be the worst shell since C shell.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    22. Re:Developers! Developers! Developers! by MightyMartian · · Score: 0

      You mean sort of like how people claim Powershell can do something that Bash can't?

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    23. Re:Developers! Developers! Developers! by Gadget_Guy · · Score: 1

      Who has been doing this? Scanning through the posts here shows a lot of nay-sayers who are obviously uninformed, but I don't see any people saying that Powershell can do things that Bash can't without offering an example. And even if they do, why don't you ask them for examples like I did?

      In the meantime, I still have to keep asking what it is that Powershell can't do.

    24. Re:Developers! Developers! Developers! by MightyMartian · · Score: 0

      It can't be concise.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    25. Re:Developers! Developers! Developers! by praxis · · Score: 1

      The ability and manner in which one does things are very different. Being able to do something does not mean it is easy, convenient or maintainable, for example.

    26. Re:Developers! Developers! Developers! by Gadget_Guy · · Score: 1

      It can't be concise.

      Yet I have already shown you that it has built-in short aliases for common functions (some which use standard Unix names), and you can add your own. For the long commands and parameters Powershell has tab completion that is miles ahead of bash as it works for parameters and values too.

      When the initial remark was "I can do a lot more with old linux tools than powershell have ever had the capability of" and the grandparent said "If you know linux well enough, you have complete control over everything including the kernel", then short (and cryptic) command names is an underwhelming example to choose.

    27. Re:Developers! Developers! Developers! by danomac · · Score: 1

      Too bad that's not the parameter list wget accepts. I can see that causing confusion.

    28. Re:Developers! Developers! Developers! by Anonymous Coward · · Score: 0

      I can do a lot more with old linux tools than powershell have ever had the capability of.

      Ignorance is bliss I suppose.

    29. Re:Developers! Developers! Developers! by Anonymous Coward · · Score: 0

      Indeed. None of the words "easy", "convenient" or "maintainable" are ones I'd associate with bash.

    30. Re:Developers! Developers! Developers! by peragrin · · Score: 2

      Some of those binary blobs though can be useful to move such a way. I recently had to merge, name match , rename and update a few thousand files on windows. I had to manually move them to a unique folder for initial seperation but the I typed ls -name :export-csv l..\list.csv

      I then was able to use excel to match file names to what I wanted them to be renamed as and the used another csv to do batch renaming of the files in seconds with the csv containing the files to be renamed and their new file names.

      That would have been much harder to do in bash.

      While powershell is a bit wordy (think AppleScript wordy)and binary blobs can cause other issues it really isn't a bad set of tools. Better than dos cmd.

      --
      i thought once I was found, but it was only a dream.
    31. Re:Developers! Developers! Developers! by MightyMartian · · Score: 1

      Exactly. Somehow running in console mode has been redefined as not automatically starting EXPLORER.EXE.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    32. Re:Developers! Developers! Developers! by nyet · · Score: 0

      It can't be compiled by me, from source code.

    33. Re: Developers! Developers! Developers! by Anonymous Coward · · Score: 0

      Which part of that would be hard to do in bash?

    34. Re:Developers! Developers! Developers! by afidel · · Score: 1

      Nano mode in Server 10 removes the GUI stack and the Win32 WoW components for a true 64bit native headless install. It's even componentized so that it will only run the services you define which is an optimization looking towards the Docker container integration.

      --
      There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
    35. Re:Developers! Developers! Developers! by Gadget_Guy · · Score: 1

      It can't be compiled by me, from source code.

      If you have a need to recompile Powershell, it would be because it lacks something. What is it lacking? I understand that ideology is important and that open source is a reasonable thing to prefer, but that it not an answer to my question of what Linux does that Powershell does not.

    36. Re:Developers! Developers! Developers! by Zaelath · · Score: 1

      Fair enough, so seriously, how do you do this on an exchange server... /usr/sbin/postqueue -p | /bin/grep MAILER-DAEMON | /bin/cut -f 1 -d ' ' | /usr/bin/xargs -n 1 postsuper -d

      Which would build a list of bounce messages and purge them from the queue?

    37. Re:Developers! Developers! Developers! by unrtst · · Score: 1

      Yet I have already shown you that it has built-in short aliases for common functions (some which use standard Unix names), and you can add your own.

      ... which is why you shouldn't trust the behavior of those within your scripts, unless you redefine them all at top. For example, most linux distro's include a default alias of "ll" to "ls -alF" or similar, but you won't see that used in scripts.

      Powershell has tab completion that is miles ahead of bash as it works for parameters and values too.

      apt-get install bash-completion
      It works for parameters and values too. Your info is WAY out of date if bash completion lacked that support the last time you used it. It can get really really fancy too. "apt-get" is a good example of one that has excellent bash completion:
      $ apt-get i
      $ apt-get install apa
      $ apt-get install apache
      apache2 apache2-mpm-event apache2-prefork-dev apache2-utils
      apache2.2-bin apache2-mpm-itk apache2-suexec apachetop
      apache2.2-common apache2-mpm-prefork apache2-suexec-custom
      apache2-doc apache2-mpm-worker apache2-threaded-dev

      That also works for remove, only showing items that are already installed.

      It won't surprise me if powershell *can* do similar levels of completion, but, and maybe this is my background or something, it's not going to feel as natural and it's unlikely to have as many truly useful items in place (ex. the apt example is impossible without a similar package manager, and that's just not in the cards).

    38. Re:Developers! Developers! Developers! by Anonymous Coward · · Score: 0

      Fair enough, so seriously, how do you do this on an exchange server... /usr/sbin/postqueue -p | /bin/grep MAILER-DAEMON | /bin/cut -f 1 -d ' ' | /usr/bin/xargs -n 1 postsuper -d

      Which would build a list of bounce messages and purge them from the queue?

      You're really comparing Exchange to postfix, but powershell can do all that, the pattern match, the split, and iterating over the output.

    39. Re:Developers! Developers! Developers! by Rutulian · · Score: 1

      That would have been much harder to do in bash.

      I hope you're joking. That would be a one-liner using the find command and a regex to rename the files.

    40. Re:Developers! Developers! Developers! by Zontar+The+Mindless · · Score: 1

      It's lacking the ability to vet the sources.

      --
      Il n'y a pas de Planet B.
    41. Re: Developers! Developers! Developers! by Anonymous Coward · · Score: 0

      Not to to mention that everything is an object in power shell which can lead to more flexibility when combining with object oriented programming. Powershell has superceded bash with version 4. PS 1 and 2 yes useless without the newer modules. (How many times have you said I wish I can grew in windows). Now you can. Powersell is a must have skill set for any enterprise admin worth their salt.

    42. Re:Developers! Developers! Developers! by godefroi · · Score: 1

      Yeah, I agree on the argument syntax. They should've picked Linux style arguments, given they're wider spread.

      Either way, though, if you're on Windows, it's your best option. Cygwin sucks.

      --
      Karma: Poor (Mostly affected by lame karma-joke sigs)
  2. I'll bite by Anonymous Coward · · Score: 0

    Is there ANY technical benefit of PowerShell compared to a modern shell?

    1. Re:I'll bite by Anonymous Coward · · Score: 5, Interesting

      PowerShell is a modern shell.

      Benefits:
      - Object oriented, so no awkward parsing of strings. Every item is automatically delivered in its own capsule.
      - Integration with other Windows subsystems and the .NET Framework
      - Comes with a mini IDE called PowerShell ISE for developing scripts
      - Excellent documentation with lots of examples (the Get-Help command)
      - Intuitive, easy to remember command names

    2. Re:I'll bite by ausekilis · · Score: 0

      ummm... it has the MS logo? Reading their post it says some stuff about automagically unpacking compressed files into desired directories on remote servers when that file changes. Though I'm not sure that makes a damned bit of difference when you have chron and rsync.

    3. Re:I'll bite by thaylin · · Score: 3, Interesting

      Every time I have used powershell it has been anything but intuitive or easy to remember.

      --
      When you cant win, ad hominem.
    4. Re:I'll bite by l3v1 · · Score: 2, Insightful

      "- Comes with a mini IDE called PowerShell ISE for developing scripts"

      No. A shell that has an IDE to aid formulating godforsaken scripts that mere mortals can't even remember. Just no.

      --
      I am putting myself to the fullest possible use, which is all I can think that any conscious entity can ever hope to do.
    5. Re: I'll bite by Anonymous Coward · · Score: 1

      Absolutely. The ability to pipeline objects as opposed legacy stdio pipes is a killer feature. It make PS way more powerful than typical Unix shells. You can do one liners that do so much!

      I've been developing software for 25 years, across most major platforms. Anyone who trolls Poweshell because it came out of MS is an idiot biggot.

      It's (far) superior. Period.

    6. Re: I'll bite by Anonymous Coward · · Score: 0

      So you've never used of then.

    7. Re: I'll bite by Anonymous Coward · · Score: 3, Insightful

      Why the hell did they put the verb first in command names? They're all Get-This or Set-That or Export-Those or Write-These. This makes an alphabetic list of commands useless, because it groups by verb instead of by noun. It's just one long list of Get- commands, for example, that then need to be searched to find the relevant noun. They should have put the noun first.

    8. Re:I'll bite by gweihir · · Score: 1

      Indeed. When it gets complicated enough that an IDE is beneficial, I go Perl or Python. (And I still do not use an IDE for those. IDEs are crutches for beginners.) Shell is for simple-clear-fast(to do) only.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    9. Re: I'll bite by Anonymous Coward · · Score: 1

      Very few people are "trolling" Powershell because it came out of MS, they don't like it because the idea of chaining objects in a pipe is stupid. It's way more complex, the names are extremely long and non-intuitive, and you can't possibly keep the current state at each point in your head. Text is far, far superior because it's easy, standard, and simple. There's a reason we've had it for 40 years and it's still going strong.

    10. Re:I'll bite by LordLimecat · · Score: 4, Informative

      It sounds like you dont use it often, which is hardly a good reason to knock it. But I can offer a few tips:

      1) Remember that just about everything is an object, with one or more attributes and methods. Even strings are objects, and can use methods such as ".equals(System.obj)". Get-Member is your friend for determining what methods and attributes apply:
              "This is a string" | get-member

      2) All (properly made) commands take the form of [verb]-[noun]:
              get-member
              set-ADUser
              remove-item
              get-help

      3) When iterating over a group using "foreach" or "where-object", the special variable $_ is used as a placeholder for the current element:
              @("arrayIndex1", "arrayIndex2") | foreach { write-host $_ }
              @("RedFish", "BlueFish", "BlueBird") | where-object {$_ -like "blue*"}

      4) When in doubt, use one of the following:
              Get-Help [command]
              Get-Command
              $variable | get-member
              $variable | format-list *

      Im of the opinion that it takes all of about 8 hours to learn to do the majority of things you would want to do in powershell (partly because thats about how long it took me). You just have to take some time to sit down and learn it, and then make an effort to use it instead of GUI administration tools. It is far, far superior to old windows command prompt and vbs,

    11. Re:I'll bite by gweihir · · Score: 1

      1. What is awkward with string parsing? Is this shell aimed at _incompetent_ people?
      2. And that works how on Linux?
      3. An IDE in a Shell? Is the syntax so bad that you need an IDE? Or is this another effect of being aimed at incompetents?
      4. Aehm, know any mainstream modern shell that does _not_ have excellent documentation?
      5. Seriously? I found the command syntax exceptionally awkward and badly thought out. I am back to a cygwin console for most things.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    12. Re:I'll bite by Anonymous Coward · · Score: 0

      Having an IDE for scripts isn't necessarily a bad thing. Scripts are often complicated beasts.

      bash has a heck of a lot of builtins, and then there are external executables. Remembering the commands, the syntax, and so forth for all of this can be quite challenging.

      Just to take a very simple example. For the sake of this post, I was going to say "assign a variable a different variable + 1". So, I tried doing that in bash.

      x=3
      y=$(x+1)

      Oh, right, I need another $

      x=3
      y=$($x+1)

      Hmm. no. Right. Double parenthesis in this case.
      x=3
      y=$(($x+1))

      Oh, and let's see. I want to get a substring of a variable. Say I want to iterate over a file, line by line, and then strip everything after the first " bar" in each line.

      while read line ; do
          echo ${line%% bar*} ;
      done file

      You can't tell me that it wouldn't be a tiny bit practical to have an IDE help you with the syntactic fun of bash in these cases.

    13. Re: I'll bite by Anonymous Coward · · Score: 1

      I was piping objects in Smalltalk, Python and even Perl years before .NET even existed.

    14. Re:I'll bite by LordLimecat · · Score: 4, Insightful

      Have you ever seen init scripts? Theyre way more painful to deal with than anything powershell ever is.

      The reason they have an IDE for it is because you can use it to do incredibly complex things, like design GUIs that tie in administration elements from Active Directory, SANs, switch configuration, virtual infrastructure configuration and deployment, and computer administration-- all in one language with a common syntax.

      Doing something like that would be a nightmare in bash. It sounds like you havent used powershell, which is a pretty good reason not to comment on it.

    15. Re:I'll bite by LordLimecat · · Score: 1

      It makes a difference because cron and rsync arent good tools for changing a configuration across a mixed environment with a single interface.

    16. Re: I'll bite by Anonymous Coward · · Score: 1

      Text is simple..yes, but how do you do something like recusively search a directory, filter those by say... owner, date range and also contains a regex within the file...then pipe that file subset off to the next component...say an archive (g)zip... All on a single line?

      Your csh/bash script is painfully long by comparison. It's one line in PS.

      Like any tech...you need to learn how to use it yes. By choosing to ignore it...you are only being unproductive...or another way to put it...your expensive to my projects and bottom line...

    17. Re:I'll bite by ausekilis · · Score: 5, Insightful

      Im of the opinion that it takes all of about 8 hours to learn to do the majority of things you would want to do in powershell (partly because thats about how long it took me). You just have to take some time to sit down and learn it, and then make an effort to use it instead of GUI administration tools. It is far, far superior to old windows command prompt and vbs,

      I think the same can be said about any *nix shell. Having used powershell a few times, it really just feels like a kludged attempt to bring CMD.exe to something closer to bash.... 20 years later. Now the question becomes just because you can use it, does it mean you should? Last I checked, Windows still has a lot of protections from even the simplest modifications. I much prefer being able to see /etc/fstab than working with some nebulous class with functions that barely make sense.

    18. Re:I'll bite by OzPeter · · Score: 1

      You can't tell me that it wouldn't be a tiny bit practical to have an IDE help you with the syntactic fun of bash in these cases.

      That would require admitting that all is not right in paradise - something an ideologue could never do.

      --
      I am Slashdot. Are you Slashdot as well?
    19. Re:I'll bite by Austerity+Empowers · · Score: 1

      Hopefully it's MS's attempt to either get real developers to use it and justify its cost, or to ignore it and maybe finally get BASH in windows so it can stop sucking so much.

    20. Re: I'll bite by Anonymous Coward · · Score: 0

      Really? If you cannot remember that $() is subshell and $(()) is arithmetic, no IDE is going to help you. Yes, string handling sort of sucks, but it's not because it lacks an IDE.

    21. Re: I'll bite by Anonymous Coward · · Score: 0

      Good try! That was almost english,

    22. Re:I'll bite by Anonymous Coward · · Score: 0

      It sounds that you simply are more familiar with the *nix shell. And so am I, but adding PowerShell to my skill set was a fun experience. It's like exploring the *nix shell for the first time, finding cool commands and various ways to combine them. Although it's quite different from Bash in my opinion.

    23. Re: I'll bite by Anonymous Coward · · Score: 0

      Because you can do something like:

      Get-Command -Noun *Net*IP*

      to find your commands related to e.g. all networking nouns for IP(Sec). Sorting is a waste of time if you know what you're looking for and just doesn't scale with thousands of possible cmdlets.

      Also:
      Get-Command | Select Name,Verb,Noun | Sort Noun

      Will give you your sorted list of nouns if you insist.

    24. Re: I'll bite by seanm666 · · Score: 2

      find . -type f -user root -ctime +7 -print0 | xargs -r -0 grep -l "blah" | xargs -r tar cvzf blah.tar.gz

    25. Re:I'll bite by goarilla · · Score: 1

      Don't forget: x = 3
      doesn't work.
      while: x=3 does.
      The l, r-value and assignment operator can not be tokenized by whitespace.

    26. Re:I'll bite by Anonymous Coward · · Score: 0

      What is awkward with string parsing? Is this shell aimed at _incompetent_ people?

      The problem with string parsing is that you have to be super careful to get it right. Also it introduces a lot of extra work.

      For example, to get md5sums of your files, taking care of spaces in filenames:

      find /home/johndoe -print0 | xargs -0 md5sum

      If this was object oriented, it would simply be:

      find /home/johndoe | md5sum

    27. Re:I'll bite by TheRaven64 · · Score: 3, Insightful

      I think the same can be said about any *nix shell

      Clearly you've not done much UNIX shell scripting, if you've not been bitten by the issues with having to escape strings multiple times.

      --
      I am TheRaven on Soylent News
    28. Re: I'll bite by Anonymous Coward · · Score: 0

      Sigh...

        get-command | sort Noun, Verb

      PowerShell blows Bash out of the water, you're just ignorant of its capabilities. Learn something about it first before you try to call out failures it does not have.

    29. Re:I'll bite by goarilla · · Score: 1

      The reason they have an IDE for it is because you can use it to do incredibly complex things, like design GUIs that tie in administration elements from Active Directory, SANs, switch configuration, virtual infrastructure configuration and deployment, and computer administration-- all in one language with a common syntax.

      Why would you want to do that with a scripting language ? I thought that's what MMC was for.
      While nice sed tetris isn't a good idea either.

    30. Re:I'll bite by gweihir · · Score: 1

      I am sorry, I have no idea what you are talking about. String parsing is bread&butter to any competent system administrator. Also, who puts spaces in their filenames?

      That said,

            find /home/johndoe | md5sum

      makes an MD5 hash of all the names found. Maybe you have no idea what you are talking about? In fact,

            find /home/johndoe -exec md5sum \{\} \;

      works perfectly fine with spaces in filenames and does individual per-file MD5 hashes as it should.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    31. Re:I'll bite by LordLimecat · · Score: 5, Informative

      The nix shells I have used are very powerful, but also very, very painful to learn. Learning sed / awk syntax could easily fill 4 of those 8 hours I mentioned; and thats not even getting into how each and every tool has its own unique idea of how to do syntax. What does a -z switch specify? I dont know, probably fire up that man page and dig through it. What about -h? Is that help, or human readable?

      it really just feels like a kludged attempt to bring CMD.exe to something closer to bash.

      Theyre not even remotely close. They both operate on the idea that data should be passable between consecutive commands via a pipeline, but bash makes no attempt to deal with different types of data nor any good way to determine what data is incoming. Powershell solves this by being object oriented, and letting you easily determine the type of data coming in, export it to XML, and reimport it at a later session if desired.

      As an example-- if you have an error in bash, whats the stack trace look like? Do you have a good way of capturing it? In powershell you can reference the $error[0] variable, and pull up any piece of info you might need to troubleshoot, or even just export the whole thing by "$error | export-cliXML -file C:\somefile.xml" if you're running a nightly job; any issues can later be imported into a new session to diagnose.

      Now the question becomes just because you can use it, does it mean you should?

      Yes. If you deal with IT infrastructure at all, you would be absolutely crazy not to learn it; its explicitly supported (with native commands) by:

        * ALL of the major virtual infrastructure providers (VMWare, HyperV, Xen
        * All versions of windows
        * A great many storage providers (EMC, NetApp, probably others)
        * A number of network infrastructure providers
        * IIS, and Exchange -- like it or not these are huge players
        * And anything else you want to add support for yourself-- I note that Hadoop for example has community support for powershell

      By support, I dont mean in the sense that you could use bash to launch SSH to manage these things. I mean in the sense that VMWare allows you to run the following native powershell commands:
            Connect-VIServer myVMCluster
            Get-VM | Where-object {$_.powerState -eq "PoweredOn"} | foreach { stop-VM $_}

      And all of your VMs will be shut off. Trying to do something like that in bash is doable, it just requires screwing around with scripted SSH access to the VMhosts which is painful, for anyone who has done it.

      I much prefer being able to see /etc/fstab than working with some nebulous class with functions that barely make sense.

      This is a criticism of object-oriented languages, not powershell. You might as well rail against .Net, or Java, or C++.

    32. Re:I'll bite by Anonymous Coward · · Score: 0

      I use "copy 'n paste" a lot! And you know, doskey isn't so bad either. Everything's a macro.

    33. Re:I'll bite by DuckDodgers · · Score: 1

      Good post. I'm an open source fan or fanatic, but that does not mean The Unix Way (tm) has lead us to paradise. There's a lot of room for improvement.

    34. Re:I'll bite by gweihir · · Score: 1

      They will not get bash to work well under windows. The problem is the brain-dead and overcomplicated NTFS permission system. There is no way to get that handled without just as over-complicated and brain-dead "special" tools.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    35. Re:I'll bite by LordLimecat · · Score: 1

      An MMC would not allow you to use a text-field to search for a user, press a button, and have a new VDI instance spun up, storage provisioned, and permissions configured.

      A more common use case would be what I described, but without the GUI, repeated 100 times for 100 different users.

    36. Re: I'll bite by Anonymous Coward · · Score: 0

      You can omit the verb with asterisk and then use Tab completion. For example *-Da<Tab> gives you Set-Date and Get-Date.

    37. Re:I'll bite by Anonymous Coward · · Score: 5, Informative

      I've used Powershell several times to write more complex scripts that I would normally have installed Perl on a Win64 system to handle but didn't want to in those particular cases. It worked pretty well once I got all the permission issues worked out, and got kind of familiar with the syntax.

      It was still extremely painful to use. The bloody verbosity of the platform (it really is a platform - not a language) was the worst part. It seems to have been engineered straight out of the com-sci-professor-that's-never-had-to-build-anything's handbook. There is no compromise for anything, few shortcuts. The functions were not sensible in my opinion, as some other posters have mentioned, they would use terms that simply had more syllables than obvious synonyms that are normally used for such things. An IDE was necessary so you could scroll through the list of available functions to find the one you were looking for as they were generally not that obvious. Once you get used to them, sure, it's not as bad, but it's still like having an ankle hobbled compared to both knees.

      I would say it's fantastic compared to your standard batch script. If that's all you've ever known, I seriously pity you.

      I would also say it needs to compromise a great deal to be reasonably useful to people building system scripts, especially coming from unix environments where we've had such tools for $AGES, and have always been asking why our Windows brethren would put up with such silly useless systems.

      I would say that the above you say would be a nightmare in bash - it would be much more trivial in perl, which is what I commonly use for such things. A quick for loop to rename files? Definitely bash. Holy cow is that a pain in Powershell.

      Lastly, I would say: man pages. Sure, MSDN, but not when you don't have network access, or were you cool with installing 1.7gb more files (seriously??) to support it? Space is cheap until you are running out, at which point it's immediately more expensive. It's just a no-brainer.

      Overall, I think Microsoft is incredibly late to this game, over-engineered something as is the norm, and is using marketing tactics to heighten its adoption rather than working on its usefulness. If they could drop in better in-line documentation especially at the command-line (GUIs are great when you have plenty of monitor space and are actually using a UI instead of the console, when you really need to be confident in what that switch is about to do to your last snapshot), make a lot of aliases for the functions (not just the objects) they've developed for the various classes available, and make many of the more commonly used functions statically available directly in the shell instead of buried deep down in some class infrastructure, I for one would be tossing all of my Windows Perl installs (sorry ActiveState, but they're really just band-aids!).

    38. Re:I'll bite by Anonymous Coward · · Score: 0

      find /home/johndoe | md5sum

      What if you actually wanted and md5 hash of the directory listing? Now what?

    39. Re:I'll bite by goose-incarnated · · Score: 1

      Having an IDE for scripts isn't necessarily a bad thing. Scripts are often complicated beasts.

      bash has a heck of a lot of builtins, and then there are external executables. Remembering the commands, the syntax, and so forth for all of this can be quite challenging.

      Just to take a very simple example. For the sake of this post, I was going to say "assign a variable a different variable + 1". So, I tried doing that in bash.

      x=3 y=$(x+1)

      Oh, right, I need another $

      x=3 y=$($x+1)

      Hmm. no. Right. Double parenthesis in this case.

      [snipped]

      done file

      You can't tell me that it wouldn't be a tiny bit practical to have an IDE help you with the syntactic fun of bash in these cases.

      I can tell you that you're doing it wrong - what's wrong with bc? And yet, $() vs $(()) is dead simple to remember, so simple that I hardly use bc. It's not just the bash shell that's powerful, it's all the utilities that go with it - cut, sed, grep, etc. It's the fact that the less trivial logic can be written in python, perl, hell even some other compiled program.

      The value of bash is ironically not bash itself, it's the ability to use some third-party program, which was never designed for anything other than plain-text, in new scripts. I'm not sure how powershell competes with this, due to never having used it. But I have to ask, how do I use powershell on my csv file if I first want to run 'sort -u' on it and then 'sed "s/,,/0.01/g"'?

      --
      I'm a minority race. Save your vitriol for white people.
    40. Re: I'll bite by DuckDodgers · · Score: 2

      You have the syntax memorized, but the problem is that the input flags for 'find' aren't the same as the ones for 'xargs' which in turn don't overlap with the ones for 'grep' or 'tar'. So that's four different sets of input flags you had to master. Congratulations on your skill. If you run into a text manipulation that's really complex, you have to use sed, awk, or Perl.

      PowerShell has its warts, but the command flags are more uniform and its own help search is simpler. Complex text manipulation isn't as complex to implement because a.) you're working with objects and b.) you don't have to learn sed, awk, or Perl to get the job done.

      I hate Microsoft's practices, their use of patents, and the windows registry among many other things. But it only benefits the open source community if we examine their tools closely and learn from them. Not everything they do is an inferior knock off of Unix practices.

    41. Re:I'll bite by advantis · · Score: 1

      Because there's no such thing as an assignment operator in bash. Everything is a string token at first (even numbers aren't number unless you're in arithmetic evaluation context), and then tokens get interpreted in various ways once split by whitespace.

      x = 3 happens to be three tokens, the first one being the command 'x', the other two being parameters '=' and '3' to command 'x'.

      x=3 is one token and it doesn't mean assignment unless it's in the command preface where assignments take place.

      This is from 'man bash', under SHELL GRAMMAR / Simple Commands:

      A simple command is a sequence of optional variable assignments followed by blank-separated words and redirections, and terminated by a control operator. The first word specifies the command to be executed, and is passed as argument zero. The remaining words are passed as arguments to the invoked command.

      The AC failed to recognise the $(command) construct, which is 'execute this command and give me its output as a string.

      And the AC also messed up the arithmetic. This is what should have been written:

      x=$((x+1))

      This three are even better:

      ((x = x + 1))
      ((x += 1))
      ((x++))

      Variable expansion happens in the arithmetic context (see 'man bash' / EXPANSION / Arithmetic Expansion), so doing $(($x + 1)) is actually wrong, because if $x expands to 'y' then you end up with $((y + 1)), which might be useful sometimes, but given the lack of understanding shown it's probably not what you're actually trying to do.

      RTFM means 'man bash' in this case. It may take you a day to go through it and experiment with what you learn in each section, but it's worth it.

      --
      Question for religious people: where do unrepentant masochists go when they die?
    42. Re:I'll bite by Anonymous Coward · · Score: 0

      This is my impression of Powershell (admittedly after using it only twice... and yes, I know those aren't the actual commands...)

      GNU/Linux copy command: cp
      Powershell: duplicate-file-in-such-a-way-to-end-up-with-a-copy

      GNU/Linux delete command: rm
      Powershell: delete-file-so-its-presence-is-no-longer-seen-in-the-filesystem

    43. Re:I'll bite by goose-incarnated · · Score: 1

      find /home/johndoe | md5sum

      What if you actually wanted and md5 hash of the directory listing? Now what?

      That *does* give you the md5sum of the directory listing. To get the md5sum of every file you'd use

      md5sum `find .`

      --
      I'm a minority race. Save your vitriol for white people.
    44. Re:I'll bite by Anonymous Coward · · Score: 0

      Okay, Mr. Linux. :)

    45. Re:I'll bite by LordLimecat · · Score: 5, Informative

      The bloody verbosity of the platform (it really is a platform - not a language) was the worst part

      A few things-- the language has a large number of shortcuts, like "fl" instead of "format-list" or "?" instead of "where-object" or "%" instead of "foreach". But the verbosity of it is not really a bad thing, as it makes the resulting code at least somewhat self-documenting; its crystal clear what each command will do most of the time.

      An IDE was necessary so you could scroll through the list of available functions to find the one you were looking for as they were generally not that obvious

      This is what tab-completion or get-member or even "get-help [command] -examples" is for.

      A quick for loop to rename files? Definitely bash. Holy cow is that a pain in Powershell.

      $date = get-date -format yyyyMMdd
      get-childitem -filter *.txt | foreach {rename-item $_.fullname "$date_$($_.name)"}

      Really not that painful.

      You mention usefulness- the usefulness as you said is that its a platform supported by an incredible number of vendors. Just about every piece of infrastructure I've come across has vendor-provided powershell integration; the ability to take output from a get-VM command and pass it into a storage provisioning command makes a number of tasks incredibly easy.

      Lastly, I would say: man pages.

      get-help is your friend, and is far superior to man with the -detailed or -examples switches. Not sure where you're getting the "1.7GB", but this page indicates that the size is more like 9KB.

    46. Re:I'll bite by Gadget_Guy · · Score: 1

      Every time I have used powershell it has been anything but intuitive or easy to remember.

      Once you get used to the naming system then it is quite intuitive. And if you don't know how to do something then it has some built-in mechanisms to make it easy to find out how to do things. For example, if you don't know how to import a CSV file, try get-help *csv* and it shows all the aliases and commandlets and pertain to CSV importing and exporting.

      Then with tab completion you can Import-Csv - and press tab after the dash and view all the parameters of the command. If you choose -Encoding press space then press tab again and it displays the options just for that argument (the different encoding types).

      So all that was found without having to look up help files. You didn't even need to look at get-help to see the list of commands. Just type *csv* and press tab and display the commands interactively.

      So yes it is a verbose language, but that makes it easier to discover the commands to use.

    47. Re:I'll bite by Ancil · · Score: 1

      I much prefer being able to see /etc/fstab than working with some nebulous class with functions that barely make sense.

      Systemd will fix that soon enough.

    48. Re:I'll bite by nine-times · · Score: 1

      It's not really fair to say that Powershell is, "a kludged attempt to bring CMD.exe to something closer to bash.... 20 years later." You can argue that it's kludged (I don't think it really is) or that it's late to the game (it is), but it's not really like Bash. Bash treats everything like text, whereas Powershell treats everything as an object. Bash relies on a lot of stand-alone applications being chained together, whereas Powershell tends to have more built-in functionality which is supplemented by various extensions.

      Whether you like those differences or not is a different issue, I suppose, but it's not like Bash. It's not even trying to be like Bash.

    49. Re:I'll bite by AqD · · Score: 1

      There isn't modern shell on Linux except perhaps the scheme shell.

      Unix shells have traditionally been process-based, all the commands, pipelines, and job controls are around processes which are inefficient and inflexible. Take the common find+grep for example, every files "find" find spawn a new grep process, which is an very expensive operation (compared that to the same ability offered by IDEs and text editors), considering the OS has to load "grep" and re-initialize c-library and other pointless stuff, for nothing but a simple regex checking which is no more than a line of code in Perl or Python.

      PowerShell is different and could be considered modern (not that the idea is new; it's been decades) because it's component-based, or function-based. The idea is that instead of individual programs with coarse grained / limited parameters and functionality, administrators would be working with OO components or C-functions, which enables you to do something like glob()+regexec() in place of find+grep, in the same process, single-threaded or distributed among multi-threads to utilize multi-cores on modern CPUs. It should give much better flexibility and very fine-grained control, just like real code.

      I fail to see how it could possibly work well on Unix-like systems though, since there is no standard for component infrastructure (COM/ActiveX/.NET/) here and so far reusable components only exist in rather trivial desktop programs; Developers of most important GUI apps on Linux also don't give a shit about common interface (PS: Chrome, Firefox, OpenOffice, etc) and development of basic utilities have been stagnated for many years. It'd have a better chance on Android, to integrate system services via Binder.

      PS: It's actually just like Python or Perl, with some shortcuts for shell-like job control. The main difference is the availability of reusable components on Windows and backing of entire Windows system which makes it useful for many management tasks.

    50. Re:I'll bite by Anonymous Coward · · Score: 0

      A shell that has an IDE to aid formulating godforsaken scripts that mere mortals can't even remember.

      Welcome to the Windows, I mean .Net internals. IDE serves as a documentation for the complexity already there.

    51. Re:I'll bite by nine-times · · Score: 1

      No. A shell that has an IDE to aid formulating godforsaken scripts that mere mortals can't even remember.

      What about an IDE for formulating normal scripts that mere mortals can even remember?

      I don't see what the objection to an IDE is. If I'm writing anything more than the simplest script, I find it helpful to have some kind of debugging tools.

    52. Re: I'll bite by MightyMartian · · Score: 1

      Powershell's warts, or at least it's biggest wart, its extreme verbosity, is what turns me off. Yes, the GNU toolkit, while having taken great strides to create uniform argument syntax, still retains some legacy cruft, but Chr-st almighty, the sheer amount of typing for even the most mundane scripts just makes me loath Powershell. I still prefer sh and its descendants, and I'll admit that is in part because I've been using them for 25 years, but Powershell is just way too bloody verbose, and it's why I still do most of my scripting in bash.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    53. Re:I'll bite by benjymouse · · Score: 1, Informative

      1. What is awkward with string parsing? Is this shell aimed at _incompetent_ people?

      No, PowerShell is aimed at admins who want *robust* scripts - both the ad-hoc ones they whip up as well as the ones they choose to save. String parsing is extremely brittle, and most bash shell scipters do it the insecure and brittle way because it is easier.

      String parsing is often thrown off if presented with unusual characters in file names, if executed in locales where dates and numbers are both generated and parsed different, etc.

      2. And that works how on Linux?

      OMI is available on Linux. Read the FTFA

      3. An IDE in a Shell? Is the syntax so bad that you need an IDE? Or is this another effect of being aimed at incompetents?

      You're the incompetent one. There's is no "IDE in a shell". The ISE *is* the shell - much like if you did bash scripting from emacs. The difference is that the ISE will provide you with intellisense (automatic suggestions), help, syntax highlighting, snippets, multiple script panels, integrated source-level debugging (complete with breakpoints, variable inspection etc) and even a command "builder".

      4. Aehm, know any mainstream modern shell that does _not_ have excellent documentation?

      Most *nix shells have good documentation. PowerShell has good documentation as well. All of the cmdlets have syntax descriptions (automatically generated from metadata), description and multiple examples. In PowerShell even user-defined functions, cmdlets and script files can have the same level of documentation. Comment based help (look it up) makes it super easy to document scripts and functions. And the auto-generated syntax diagrams and parameter descriptions also work for your own script files.

      5. Seriously? I found the command syntax exceptionally awkward and badly thought out. I am back to a cygwin console for most things.

      PowerShells command syntax is extremely consistent. Cmdlets are *always* of the verb-noun form, and there are only about 40 or so standard "approved" verbs. Parsing of the command parameters is the responsibility of the *shell* not of the commands like in *nix shells. Hence, all commands follow the same convention with no strange outliers like e.g. dd. Parameter names are always "long" - but can be abbreviated as long as the abbreviation is unambigous.

      --
      Reading slashdot one-liner: (irm http://rss.slashdot.org/Slashdot/slashdot).rdf.item | fl title,desc*
    54. Re:I'll bite by benjymouse · · Score: 1

      They will not get bash to work well under windows. The problem is the brain-dead and overcomplicated NTFS permission system. There is no way to get that handled without just as over-complicated and brain-dead "special" tools.

      Yes, there is no concept of SUID/setuid on Windows. So there's no sudo "happy go lucky".

      --
      Reading slashdot one-liner: (irm http://rss.slashdot.org/Slashdot/slashdot).rdf.item | fl title,desc*
    55. Re:I'll bite by Junta · · Score: 1

      I don't think you are going to reach an accord on Powershell syntax. I personally find it tedious, and frankly the Verb-Noun thing is backwards (Noun-Verb would have worked better, I don't need to know all the things I can 'Get', I need to know the things I can do to a Disk). That said, there is a convention, which is something that cannot be said for the more diverse set of shell commands.

      In general the two camps need to recognize the situation for what it is. Empowering Microsoft shops to manage Linux workloads. It isn't going to win over a Linux shop to start using Windows if they don't already.

      --
      XML is like violence. If it doesn't solve the problem, use more.
    56. Re:I'll bite by Bozzio · · Score: 1

      IDEs are crutches for beginners.

      I'm always surprised that this old-school condescension still exists today. An IDE is a tool. Sometimes it's the right too for the job and sometimes it isn't. Not using one doesn't make you a leet haxor.

      --
      I just pooped your party.
    57. Re:I'll bite by gweihir · · Score: 1

      I agree. That said, and with all my not liking Powershell very much, it is a useful shell and it is vastly better than cmd.exe. If it gets more people to understand what the commandline is about, that is something. Might also make it a lot easier to get an MS admin to do at least some things on Linux and maybe even look at the native shells.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    58. Re:I'll bite by gweihir · · Score: 1

      You misunderstand. I find that IDEs stand in my way and make me slower. They also make it harder to concentrate on the core of the problem. I am not declining to use them on principle. In fact, I try one from time to time when I learn something new (last one was the Python IDE), but so far I have always dropped them pretty soon because they were not very useful. The only thing I dropped really fast was that hacked-together atrocity Eclipse, when I found that a) it was hard to use my own text-editor and b) the IDE did not notice that I had changed a file. Really, who in their right mind forces developers to use one specific editor?

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    59. Re:I'll bite by Gadget_Guy · · Score: 1

      Those examples are wrong.

      GNU/Linux copy command: cp
      Powershell: cp

      GNU/Linux delete command: rm
      Powershell: rm

    60. Re:I'll bite by jrumney · · Score: 2

      Even more fun when you're calling out to the shell from some other language.

    61. Re:I'll bite by Anonymous Coward · · Score: 0

      So... It's sorta like a .Net REPL but not quite?

    62. Re: I'll bite by benjymouse · · Score: 1

      You can accomplish almost any task with fewer keystrokes in PowerShell compared to bash - and the resulting command will still be more readable.

      --
      Reading slashdot one-liner: (irm http://rss.slashdot.org/Slashdot/slashdot).rdf.item | fl title,desc*
    63. Re:I'll bite by jrumney · · Score: 1

      Have you ever seen init scripts?

      I'm still trying to get over the upgrade to systemd, you insensitive clod!

    64. Re:I'll bite by goarilla · · Score: 1

      Because there's no such thing as an assignment operator in bash. Everything is a string token at first (even numbers aren't number unless you're in arithmetic evaluation context), and then tokens get interpreted in various ways once split by whitespace. x = 3 happens to be three tokens, the first one being the command 'x', the other two being parameters '=' and '3' to command 'x'. x=3 is one token and it doesn't mean assignment unless it's in the command preface where assignments take place.

      Tomatoe Tomato.

      Actually I also do $(($x+1)) as per example in http://pubs.opengroup.org/onli.... (Arithmetic section)

      But I think I will have to revise that behaviour as it could allow circular problems or "arithmetic injection". Thanks for making me aware of this.

    65. Re:I'll bite by MachineShedFred · · Score: 1

      Huh. I had no idea that using an IDE that integrates git so that we can version control our scripts and config files is "for beginners."

      Seems more like "the right way if you actually work with other people."

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
    66. Re:I'll bite by Anonymous Coward · · Score: 0

      Spaces in filenames would break that as well.

    67. Re:I'll bite by Anonymous Coward · · Score: 0

      5). Powershell will randomly truncate your output to terminal and to files for no good reason.

    68. Re:I'll bite by Anonymous Coward · · Score: 0

      Also, "Find Symbol" is incredibly value when working with a large codebase you don't know very well.

    69. Re:I'll bite by ocbwilg · · Score: 1

      * And anything else you want to add support for yourself-- I note that Hadoop for example has community support for powershell

      By support, I dont mean in the sense that you could use bash to launch SSH to manage these things. I mean in the sense that VMWare allows you to run the following native powershell commands: Connect-VIServer myVMCluster Get-VM | Where-object {$_.powerState -eq "PoweredOn"} | foreach { stop-VM $_}

      And all of your VMs will be shut off. Trying to do something like that in bash is doable, it just requires screwing around with scripted SSH access to the VMhosts which is painful, for anyone who has done it.

      That's assuming that you haven't put your ESX hosts in lockdown mode or disabled SSH access, which is obviously a security best practice. If you have done these things then you can't script the actions without PowerShell.

      And it's not just VMware, either. How do you manage directory services? How do you manage storage? How do you manage networking? More importantly, how do you do it remotely and at enterprise scale? Most of the major hardware vendors out there now have PowerShell modules for managing their products, because it is quickly becoming the de facto method of managing systems for companies that use Windows server. I get that Slashdot has a fairly strong pro-linux/anti-Microsoft bias, but unless you are one of the few that live in a 100% linux/Unix world then PowerShell is the way forward.

      For anyone who has any sort of legitimate interest in learning what PowerShell is intended to be, take a few minutes to look over the Monad Manifesto. It was written by Jeffrey Snover, the "father of PowerShell". He's not some pro-Windows shill that just popped up at Microsoft, his pedigree goes all the way back to DEC and before.

    70. Re:I'll bite by phantomfive · · Score: 1

      You mention usefulness- the usefulness as you said is that its a platform supported by an incredible number of vendors. Just about every piece of infrastructure I've come across has vendor-provided powershell integration;

      Sounds like that is the primary benefit of powershell.

      --
      "First they came for the slanderers and i said nothing."
    71. Re:I'll bite by MightyMartian · · Score: 1

      Because, like, you can't execute one sh script in another sh script! Oh thank you Microsoft for giving us what 40 years worth of scripting coders never had! How did we ever live without Redmond?

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    72. Re:I'll bite by MightyMartian · · Score: 1

      If they had just given us Bash with extensions for handling Windows internals, we'd all be a lot better off. But Microsoft is allergic to the notion of cooperating on toolsets. It has to constantly make Windows special and unique.

      But, you know, OBJECTS!!!!!

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    73. Re:I'll bite by MachineShedFred · · Score: 0

      No, but the free tools that have existed for years that also work on Windows are.

      This is a Microsoft attempt to provide what Chef and Puppet have been doing for a long time, in their typical embrace / extend / extinguish manner. Now, instead of learning Ruby to work up a Chef cookbook, you can do it with PowerShell and take twice as long to write it while you instantiate .NET objects to do simple tasks! For example, in Chef:


      remote_file "/tmp/file.zip" do
          source "http://server/path/to/file.zip"
      end

      And in PowerShell:

      $source = "http://server/path/to/file.zip"
      $dest = Join-Path -Path $env:TEMP -ChildPath "file.zip"
      $wc = New-Object system.net.webclient
      $wc.downloadFile($source,$dest)

      That's stupid and annoying. Just give me a wget / curl command please.

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
    74. Re: I'll bite by Anonymous Coward · · Score: 0

      Congratulations, you don't have to use it. Unless you are tasked with administrating a Windows environment. Then I suppose you can learn how to use it, or get a different job.

    75. Re: I'll bite by MightyMartian · · Score: 1

      Exactly. It's a Windows-only shell, a glue for all the shitty cruft that constitutes the upper layers of the Windows OS.

      I use it when I have to, and that's it.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    76. Re:I'll bite by Anonymous Coward · · Score: 0

      [...] own unique idea of how to do syntax. What does a -z switch specify? I dont know, probably fire up that man page and dig through it. What about -h? Is that help, or human readable?

      They don't each have a unique way of doing syntax (most use getopt), they each have a unique set of options, because they each do unique things. Becides, something like "man foo | less +/-z" quickly shows you what the -z option means to foo. You're making things seem harder than they really are, and PowerShell better than it really is.

    77. Re: I'll bite by Anonymous Coward · · Score: 1

      find . -type f -user root -ctime +7 -print0 | xargs -r -0 grep -l "blah" | xargs -r tar cvzf blah.tar.gz

      Your example perfectly highlights the crumminess of the UNIX command line.

    78. Re:I'll bite by Anonymous Coward · · Score: 0

      but... but.... but... systemd is NOT an upgrade, quite the opposite.

    79. Re:I'll bite by praxis · · Score: 0

      Those were impressions, not examples. Impressions cannot be wrong. Perhaps you missed the first, and most important, line of Anonymous Coward's post?

    80. Re:I'll bite by Gadget_Guy · · Score: 1

      Those were impressions, not examples. Impressions cannot be wrong.

      Have you never heard of people getting the wrong impression of something? I have merely corrected the impression that Powershell will always be verbose where *nix is concise.

    81. Re:I'll bite by benjymouse · · Score: 3, Insightful

      Nah. In PowerShell:

      iwr "http://server/path/to/file.zip" -outf "${env:TEMP}/file.zip"

      You can try to make it look more verbose. But expect to be called out on it.

      --
      Reading slashdot one-liner: (irm http://rss.slashdot.org/Slashdot/slashdot).rdf.item | fl title,desc*
    82. Re: I'll bite by KlomDark · · Score: 1

      The sheer amount of typing? Tab is your friend. Learn it, use it, love it.

    83. Re:I'll bite by Goaway · · Score: 1

      The only shell I can think of that could possibly be called "modern" would be PowerShell, so this question is a bit odd.

    84. Re: I'll bite by MightyMartian · · Score: 1

      Or use Powershell minimally.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    85. Re:I'll bite by countSudoku() · · Score: 1

      In Unix-land we call that using "STANDARD IN AND OUT" you should check the man page on that, friend. Every single language in any Unix or POSIX system has a known way to address the shell: stdin, stdout, stderr. I know, SUPER COMPLEX, guy, But like I said, read the read-me .html .docx for your OS by issuing the command; sudo halt. Thanks!

      --
      This is the NSA, we're gonna geet U h@x0r5! Also, what is a h@x0r5?
    86. Re:I'll bite by praxis · · Score: 1

      Certainly, people can change their impressions, but impressions are not facts. Only the impressed can decide that his impression is incorrect.

      If you have the impression that he was stating a fact, that's your impression. Your impression is not wrong.

      My impression is that he was stating his impression.

      In no way, did anyone claim that Ananonymous Coward was stating a fact that aliases are not a feature of PowerShell, but you seemed to have the impression that is what he, in fact, stated.

    87. Re:I'll bite by Gadget_Guy · · Score: 1

      I think that you have put way too much thought into this. It is just not important. The original comment was inaccurate and just not insightful. If it is so wrong to correct the examples offered, then perhaps it was equally wrong for the AC to make the original post in the first place as it serves no point other than to perpetuate the myth that the language is too verbose to use.

      I do acknowledge your pedantry though.

    88. Re:I'll bite by Anonymous Coward · · Score: 0

      The nix shells I have used are very powerful, but also very, very painful to learn. Learning sed / awk syntax could easily fill 4 of those 8 hours I mentioned; and thats not even getting into how each and every tool has its own unique idea of how to do syntax. What does a -z switch specify? I dont know, probably fire up that man page and dig through it. What about -h? Is that help, or human readable?

      it really just feels like a kludged attempt to bring CMD.exe to something closer to bash.

      Theyre not even remotely close. They both operate on the idea that data should be passable between consecutive commands via a pipeline, but bash makes no attempt to deal with different types of data nor any good way to determine what data is incoming. Powershell solves this by being object oriented, and letting you easily determine the type of data coming in, export it to XML, and reimport it at a later session if desired.

      As an example-- if you have an error in bash, whats the stack trace look like? Do you have a good way of capturing it? In powershell you can reference the $error[0] variable, and pull up any piece of info you might need to troubleshoot, or even just export the whole thing by "$error | export-cliXML -file C:\somefile.xml" if you're running a nightly job; any issues can later be imported into a new session to diagnose.

      Because that is all so obvious....

      Seriously, if you want to debug a Bash script you can just use the portion of the script up to where it fails, it's really not that hard. BATch scripts were debugged similarly; though their lack of nice syntax made for a lot of ugly hacks to make them work nicely (e.g functions, string manipulation, etc) so few people really used BATch to its full capabilities.

      PowerShell, OTOH, solves nothing. It's just a clusterf*$k that Microsoft employed to try to introduce scripting to Windows, after having found that people really do want to script Windows with the Windows Scripting Host functionality they introduced in Windows 98 (and backported to Win95). And honestly, I'd much rather write a JavaScript or VBScript WSH file than PowerShell; it's a lot easier, more debuggable, and clearer what is going on. You still have 100% access to COM and non-COM objects, can call any Win32 API, etc. I just wish their JavaScript examples matched the VBScript examples (a lot of advanced stuff is only documented via VBScript examples).

      Now the question becomes just because you can use it, does it mean you should?

      Yes. If you deal with IT infrastructure at all, you would be absolutely crazy not to learn it; its explicitly supported (with native commands) by:

      * ALL of the major virtual infrastructure providers (VMWare, HyperV, Xen

      * All versions of windows

      * A great many storage providers (EMC, NetApp, probably others)

      * A number of network infrastructure providers

      * IIS, and Exchange -- like it or not these are huge players

      * And anything else you want to add support for yourself-- I note that Hadoop for example has community support for powershell

      By support, I dont mean in the sense that you could use bash to launch SSH to manage these things. I mean in the sense that VMWare allows you to run the following native powershell commands:

      Connect-VIServer myVMCluster

      Get-VM | Where-object {$_.powerState -eq "PoweredOn"} | foreach { stop-VM $_}

      And all of your VMs will be shut off. Trying to do something like that in bash is doable, it just requires screwing around with scripted SSH access to the VMhosts which is painful, for anyone who has done it.

      I much prefer being able to see /etc/fstab than working with some nebulous class with functions that barely make sense.

      This is a criticism of object-oriented languages,

    89. Re:I'll bite by kyubre · · Score: 1

      When I was trying to learn Dutch, the biggest impediment I had was knowing some German. It's similar enough to feel familiar, but that familiarity leads to frustration more often than not. I think this is the biggest handicap in feeling comfortable with PowerShell is not the fact that it is not better or worse, but different. Once you get the hang of the verb-noun attribute conventions it becomes fairly easy to intuit ways to do what you want to do (or navigate the inline help). Microsoft has made the syntax and paradigms (sometimes annoyingly) consistent. I once wrote the back end infrastructure for SpecExplorer's SMB tests to exercise a FreeBSD CIFs server. The ability to embed inside the PowerShell test scripts, the C# code needed to implement ssh connections and adapt the behavior of windows shell "objects" to affect a POSIX SMB server was beautiful and elegant. I'd probably have to use Python or Ruby to do something similar on a real POSIX box. And then there is the issue of portability. Unless your POSIX shell script works in dash, it probably is not as portable as you'd like to think. On the other hand, pure PowerShell script that doesn't exercise platform specific extensions tend to be very portable (on windows).

      --
      Nothing evolves faster than the word of god in the minds of men who think themselves divinely inspired.
    90. Re:I'll bite by Anonymous Coward · · Score: 0

      Powershell copy command: Copy-Item
      Powershell copy-item aliases: copy, cp, cpi

      Powershell delete command: Remote-Item
      Powershell remove-item aliases: del, erase, rd, ri, rm, rmdir

      Note that the aliases provide familiar names for both Bash and DOS users. Also not that it's fairly obvious from the aliases that the name is the only help you're given. The Bash rm and rmdir commands are not the same. The arguments supplied for anything but the simplest uses are not at all similar. The behaviors are radically different in several cases. PowerShell's design is "Bash like" only in that it's designed around a pipeline. But Bash's pipeline is text based, and PowerShell's is object based. No one that's used both would make the claim that PowerShell is in any way "like Bash"... or any of the other shells, even the shells that predate Bash and influenced ITS design.

    91. Re:I'll bite by Anonymous Coward · · Score: 0

      If he misunderstood it's your fault not his. "IDEs are crutches for beginners" is *very* different from "I don't like IDEs." Buuut you sound like the sort of dick who doesn't really care about such things.

    92. Re:I'll bite by maestroX · · Score: 1

      -- all in one language with a common syntax.

      that's the bloody misconception; a perfect all-in-one fits-all universal command line interface.
      it's the tooling's limitations glued by scripting language you choose that leads to unintended but creative and useful matter.
      the powershell's achilles heel is just that, the power of all the master of none.

    93. Re: I'll bite by Anonymous Coward · · Score: 0

      Does that mean my three panel emacs setup with a bash shell and command line git counts as an IDE?

    94. Re: I'll bite by Anonymous Coward · · Score: 0

      Do you mean grep?

    95. Re:I'll bite by afidel · · Score: 1

      That's assuming that you haven't put your ESX hosts in lockdown mode or disabled SSH access, which is obviously a security best practice. If you have done these things then you can't script the actions without PowerShell.

      You can, using vRealize Automation, it's just painful and so task specific that most places won't bother and therefore the time invested to learn it is of fairly minimal value versus learning Powershell which can be used across many problem domains and products.

      --
      There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
    96. Re:I'll bite by __aaclcg7560 · · Score: 1

      Now the question becomes just because you can use it, does it mean you should?

      My job is 100% Windows. I tried talking the admins into switching to Linux. Oh, hell no. I have to learn PowerShell programming if I want to advance in the company. *sigh*

    97. Re:I'll bite by trev.norris · · Score: 1

      get-help is your friend, and is far superior to man with the -detailed or -examples switches. Not sure where you're getting the "1.7GB", but this page [microsoft.com] indicates that the size is more like 9KB.

      I remember the first time I tried to check get-help. Windows required that I download those 9KB of files before they could be used. This seemed very silly to me. Why wouldn't the OS install come with those by default?

    98. Re:I'll bite by Dadoo · · Score: 1

      Having used powershell a few times, it really just feels like a kludged attempt to bring CMD.exe to something closer to bash.... 20 years later.

      I think it's cute, how Windows people gave Unix (and Linux) people grief, for 20+ years, because they thought the command line was "archaic". Now that Microsoft has a halfway-decent shell, it's the best thing ever.

      --
      Sit, Ubuntu, sit. Good dog.
    99. Re:I'll bite by jrumney · · Score: 1

      Thanks for mansplaining that for me. You must be a hit with the girls.

    100. Re:I'll bite by Anonymous Coward · · Score: 0

      Having used powershell a few times, it really just feels like a kludged attempt to bring CMD.exe to something closer to bash.... 20 years later.

      I think it's cute, how Windows people gave Unix (and Linux) people grief, for 20+ years, because they thought the command line was "archaic". Now that Microsoft has a halfway-decent shell, it's the best thing ever.

      As evidenced by this very thread, PowerShell IS archaic. Microsoft didn't throw away their other UI.

    101. Re:I'll bite by Anonymous Coward · · Score: 0

      I am sorry, I have no idea what you are talking about. String parsing is bread&butter to any competent system administrator. Also, who puts spaces in their filenames?

      USERS DO.

    102. Re:I'll bite by rasjani · · Score: 1

      The thing is, The Unix Way allows for improvement without throwing (decades?) of coding into a bin and starting from scratch.

      --
      yush
    103. Re:I'll bite by toadlife · · Score: 1

      This sentiment was probably common among Windows admins at the lower end of the competence scale (admittedly a large group) who were projecting insecurity about their own skills.

      I spent years molesting the cmd environment to do things that I could have done much easier in just about any unix shell, so powershell is indeed "the best thing ever", in the context of my job at a Windows-only shop.

      --
      I don't always use unix-like operating systems; but when I do, I prefer FreeBSD.
    104. Re:I'll bite by toadlife · · Score: 1

      There is nothing wrong with a good UI for common administrative tasks. Windows is designed to be operated by people with a varying skill levels.

      --
      I don't always use unix-like operating systems; but when I do, I prefer FreeBSD.
  3. PowerShell is yucky yucky yucky! by Anonymous Coward · · Score: 1

    Microsoft has done a lot right lately, but PowerShell isn't one of those things. It's just so ugly. PowerShell's syntax is just plain bad, like Perl's. And it still feels so much like using CMD.EXE. Then there is some stupid security setting I remember always running into whenever I want to use it. All in all, PowerShell is awful to use. Microsoft should have gone with IronPython instead for scripting that has integration with .NET.

    1. Re:PowerShell is yucky yucky yucky! by Anonymous Coward · · Score: 0

      There is a setting that disallows any unsigned .ps script files from being run on the system. The setting in question can disallow any .ps, allow all or signed only.

      Powershell might be an eyesore compared to [da,ba,etc]sh, but it's the only practical command line for administrating a windows server.

    2. Re:PowerShell is yucky yucky yucky! by LordLimecat · · Score: 4, Interesting

      Then there is some stupid security setting I remember always running into whenever I want to use it.

      This makes it sound like you havent done really any research or significant work with powershell other than running one-liners when you need to do something that cant be done in GUI (like deal with Exchange certificates). When thats your exposure, yes, it looks clunky, but thats also ignorance speaking.

      The command you want to do to get rid of that prompt is (as administrator) "Set-executionpolicy -Scope MachinePolicy -ExecutionPolicy bypass"-- this sets it forever.

      Powershell looks "ugly" because it aims for clarity, not brevity. Commands are explicit in what they do, such that anyone even with no powershell experience could look at most powershell scripts and get a pretty good idea of whats happening; consider a common one-liner below:
              Get-ADUser -Filter {Surname -eq "Smith"} | Foreach { Add-ADGroupMember -identity "Domain Admins" -member $_ }

      The commands are wordy, but they explain exactly what they do, and each of the parameters are self-describing; you dont need to look at something like "tar -xvzf someFile" and say "gosh, what does the z switch do again".

    3. Re:PowerShell is yucky yucky yucky! by LordLimecat · · Score: 1

      Its an eyesore if your idea of a pretty scripting language is one that uses unconventional naming schemes and arbitrarily picked switches that require a man page to explain, sure. The beauty of powershell is you can do tasks you've never done before simply using tab-completion, relying on the parameter names to describe what they do.

      Powershell is good for the same reason that this:
      public String getFirstThreeCustomers (String[] customerList) {
          final int NUMBER_OF_CUSTOMERS = 3;
          String outputText;
          for (int i = 1; i NUMBER_OF_CUSTOMERS; i++) {
              outputText = outputText + customerList[i-1];
          }
          return outputText;
      }

      Is better code than this:
      public String gfc (String[] i) {
            return i[0] + i[1] + i[2];
      }

      Both do the same thing, one is short but not really clear what its used for, the other is explicit and flexible, but wordy.

    4. Re:PowerShell is yucky yucky yucky! by silas_moeckel · · Score: 1

      Wordy is the key issue, look at your average unix app generally all the flags can use a short - or a long -- for the same function.

      PS forget that 30+ years of unix shell to near perfection and rolled their own verbose and obtuse creation.

      --
      No sir I dont like it.
    5. Re: PowerShell is yucky yucky yucky! by Anonymous Coward · · Score: 0

      I should not have to waste time fixing my tools before I can use them, especially if this involves commands that aren't obvious, even compared to UNIX shell commands.

      Broken-by-default is useless to me. So I won't use such tools.

    6. Re:PowerShell is yucky yucky yucky! by MightyMartian · · Score: 1

      How does "mv" not explain what the command does?

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    7. Re:PowerShell is yucky yucky yucky! by Anonymous Coward · · Score: 0

      The second one wouldn't be so bad with a normal function name, but anywho what about

      i = 3
      customerList[:i]

      ?

    8. Re:PowerShell is yucky yucky yucky! by benjymouse · · Score: 1

      Wordy is the key issue, look at your average unix app generally all the flags can use a short - or a long -- for the same function.

      How about if the unix app allowed only the long form option names - but allowed them to be abbreviated as long as the abbreviation was unambigous? (That's what powershell does)

      PS forget that 30+ years of unix shell to near perfection and rolled their own verbose and obtuse creation

      That why we still code in assembler and don't use those modern touch screens. Oh wait... (lalalalalalalal! -- fingers in ears, eyes firmly closed)

      --
      Reading slashdot one-liner: (irm http://rss.slashdot.org/Slashdot/slashdot).rdf.item | fl title,desc*
    9. Re:PowerShell is yucky yucky yucky! by Anonymous Coward · · Score: 0

      Output to the screen needs a different option from output to a file.
      The context of the output causes scripts to change the format of the output.

      I hate PowerShell.

    10. Re:PowerShell is yucky yucky yucky! by LordLimecat · · Score: 1

      Well, I claimed to be a powershell user, not a Java pro. I still think the first example is superior if you're intending the source code to be maintained by other people and some of them may not be expert coders-- as will be the case with scripts.

    11. Re:PowerShell is yucky yucky yucky! by Anonymous Coward · · Score: 0

      Is better code than this:

      No... No, it's really not.

    12. Re:PowerShell is yucky yucky yucky! by Anonymous Coward · · Score: 0

      but it's INFINITELY(well almost) better than command.com(cmd.exe), but yeah, otherwise it's pretty much the typical M$ mess.

      I still like their visual studio IDE though...

    13. Re:PowerShell is yucky yucky yucky! by LordLimecat · · Score: 2

      Best practices be damned, you're rockstar coder. Who cares if no one else can look at that code and figure out why you created it and where its probably being used?

    14. Re:PowerShell is yucky yucky yucky! by LordLimecat · · Score: 2

      Because some of the tools-- rm, mv, ls-- use a "take 2 letters from the word, thats the command" convention, while others are completely different (tar, unzip, gunzip, passwd, man). Theres no common convention whereby you could say"I want to do X" and know what the command is off-hand.

      To the uninitiated, there is no particular reason to think "mv" would be the move command; you have to already know that.

    15. Re:PowerShell is yucky yucky yucky! by MightyMartian · · Score: 1

      The uninitiated are going to have as much trouble with Powershell as sh.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    16. Re: PowerShell is yucky yucky yucky! by Gadget_Guy · · Score: 1

      Broken-by-default

      No, that would be secure-by-default. Sorry that is an inconvenience for you.

    17. Re:PowerShell is yucky yucky yucky! by silas_moeckel · · Score: 1

      Unfortunately that unambiguous seems mean obtuse. I've not coded in assembler in a rather long time but yes I know several variants. Touch screens are for consumer devices WTF use do they have in systems work? Are you saying you liked that addition of the metro interface to 2012? Do you have more than one screen in front of you at work, do you ever use RDP? ever tried a metro interface when not in full screen locked to a single screen? Lets not even get started on just use the apps, PS lacks basics like SSH support it's a fsking CLI yet does not support the standard method of working with one.

      Some of us have actual workstations with real keyboards a dozen square feet of monitors, it's nice and all to sysadmin from starsmucks on your tablet it's just not as productive.

      Sure I appreciate PS it's a better interface than tinkering with the fsking registry for everything, it's still not holding a candle to a good unix CLI is all.

      --
      No sir I dont like it.
    18. Re: PowerShell is yucky yucky yucky! by Anonymous Coward · · Score: 0

      It doesn't lead to better security when everyone goes out of their way to disable it just to get basic tasks, like running a script, done.

      Besides, OpenBSD doesn't have it, and OpenBSD is the most security-conscious modern, general pupose operating system around.

      It's not a security feature, in any meaningful way.

    19. Re:PowerShell is yucky yucky yucky! by Goaway · · Score: 1

      The context of the output causes scripts to change the format of the output.

      So you also hate ls, and lots of other unix tools that change format depending on whether output is going to a tty or not?

    20. Re: PowerShell is yucky yucky yucky! by Gadget_Guy · · Score: 1

      Except the majority of people running Windows don't use Powershell, so *.ps1 files cannot be used as a mechanism to infect those systems with malware. And you can still use Powershell interactively without having to change the security. This only affects people who want to run script files.

      And there is no one operating system that has every single security feature, let alone has them enabled by default. Just because OpenBSD doesn't have it, doesn't mean that it isn't a security feature on Windows.

    21. Re:PowerShell is yucky yucky yucky! by Anonymous Coward · · Score: 0

      Get-ADUser -Filter {Surname -eq "Smith"} | Foreach { Add-ADGroupMember -identity "Domain Admins" -member $_ }

      While looking through the Active Directory ... "Weird, all these Domain Admins are named Smith!"

    22. Re:PowerShell is yucky yucky yucky! by Anonymous Coward · · Score: 0

      However, since it's such a commonly used command, newcomers will quickly pick it up out of necessity, after which they will often be thankful for its brevity.

    23. Re: PowerShell is yucky yucky yucky! by KlomDark · · Score: 1

      Oh yah, bitch cause the Windows of old was insecure. Then bitch when they add security to the system. What you are disabling is a security setting that completely disables some things unless you specifically enable them. Not broken, it's called enabling a feature that isn't used on a standard user's machine.

    24. Re:PowerShell is yucky yucky yucky! by Zaelath · · Score: 1

      Might make sense once, but you could do:

      tar --extract --verbose --gunzip --file=someFile

      Except you won't, because that's inane after your first day.

    25. Re:PowerShell is yucky yucky yucky! by Anonymous Coward · · Score: 0

      Might make sense once, but you could do:

      tar --extract --verbose --gunzip --file=someFile

      Except you won't, because that's inane after your first day.

      Actually, in a script, you really should get into the habit of using long opt alternatives when you can. Clarity vs. brevity.

  4. So long bash and zsh! by Anonymous Coward · · Score: 0, Troll

    It's been nice knowing ya. Who am I kidding, no it hasn't. I am SO glad Microsoft is bringing professional-grade software to Linux. I've suffered too long with shit developed by high school students.

    1. Re:So long bash and zsh! by gweihir · · Score: 0

      As trolling goes this is pathetic. You are not even trying.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    2. Re:So long bash and zsh! by Lumpy · · Score: 0

      That's fine for people like you that the closest you get to pro equipment is the used crap you dig out of a dumpster for your mom's basement.

      --
      Do not look at laser with remaining good eye.
  5. "Open" Standard by JoeRandomHacker · · Score: 4, Insightful

    It is a lot easier to embrace an "open standard" when you developed it yourself, then donated it to a consortium.

    http://en.wikipedia.org/wiki/O...

    1. Re:"Open" Standard by Anonymous Coward · · Score: 1

      Well shit Joe, doesn't that apply to everything? Scanning your comment history I cant find similar statements about Google and SPDY, Go, VP8/9 (and on and on). I must be missing something of course.

  6. It's a trap! by Anonymous Coward · · Score: 0

    It's a trap!

  7. OMI is not an "industry standard" by Anonymous Coward · · Score: 1

    It's a M$ "standard".

  8. BANG! Beat that! by Anonymous Coward · · Score: 0

    Now Linux users can revel in the marvel that ooooozes POWER! Join the revolution!

    1. Re:BANG! Beat that! by Anonymous Coward · · Score: 0

      Sorry, it ooooozes POWER because of all the holes and leaks in it. I would rather have something that provides POWER. lol

  9. Powershell is possibly the worst shell ever by Stonefish · · Score: 3, Insightful

    Powershell is a shell written by programmers who have no understanding of what you want when administering a box. I remember when it surprised me the first time by being clever and inheriting the size of the console and automatically inserting a CR/LF into the lines of the files I was trying to process.... morons. Just because you can do something doesn't mean that you should, yes OO is a powerful construct but it just gets in the way of a simple scripting tool. Powershell is littered with little gems like this that make it absolutely useless. If you find yourself doing too much with a shell script rewrite it in a more powerful programming language like python, it should take you all of 30 minutes.

    1. Re:Powershell is possibly the worst shell ever by marcello_dl · · Score: 2

      Powershell is a shell written by programmers who have no understanding of what you want when administering a box.

      Argumentum ad systemd.

      --
      ---- MISSING MISCELLANEOUS DATA SEGMENT --- [sigdash] trolololol
    2. Re:Powershell is possibly the worst shell ever by Anonymous Coward · · Score: 0

      Powershell is a shell written by programmers who have no understanding of what you want when administering a box. I remember when it surprised me the first time by being clever and inheriting the size of the console and automatically inserting a CR/LF into the lines of the files I was trying to process.... morons. Just because you can do something doesn't mean that you should, yes OO is a powerful construct but it just gets in the way of a simple scripting tool. Powershell is littered with little gems like this that make it absolutely useless. If you find yourself doing too much with a shell script rewrite it in a more powerful programming language like python, it should take you all of 30 minutes.

      Agreed.

      What got me was that on Windows I install GNU Win32 Utils so that I have all my favorite GNU utilities from LInux on Windows too. Powershell has a ton of shortcuts that match the names of the Unix utilities, making using Powershell as a normal shell impossible.

      And that doesn't even get into the debugging scripts...

    3. Re:Powershell is possibly the worst shell ever by Anonymous Coward · · Score: 0

      Powershell is a shell written by programmers who have no understanding of what you want when administering a box.

      That's funny. As a programmer I view system administrators as people who flunked out of CS because they can't understand programming.

      No wonder they don't understand Powershell. Every programmer I know considers Powershell to be the best shell ever. Well, except for the RMS-fellators.

  10. Powershell is sweet as hell by Anonymous Coward · · Score: 2, Interesting

    Instead of trying to unreliably and painfully get out the data you want with a chain of cut, sed, awk, tr on a untyped text string etc you can just get what you want from a object.

    All Unix shells are text-oriented. PowerShell is unique in that it is object-oriented and represents a big leap and innovation in shells.

    1. Re:Powershell is sweet as hell by silas_moeckel · · Score: 1, Troll

      Unfortunately the leap is backwards.

      I don't think I've had to use cut sed awk or tr in more than a decade none of those are really for day to day sysadmin work. If I want well defined objects I use SNMP you know an extendable standard that has been around forever with a functional and extremely fine grained security model. Newer kit tends to some sort of rest API, XML is similar in structure to SNMP it's just it's overly verbose bastard child. Most of the stuff I used to use bits like awk for are log processing/report generation and thats pretty much all gone the way of logstash etc.

      This is another round of the same thing WMI is, a bad replacement for a standard method.

      --
      No sir I dont like it.
    2. Re:Powershell is sweet as hell by MightyMartian · · Score: 1

      Except that you end up turning those objects into text anyways in a large majority of scripts, making the "object" innovation little more than an annoying gimmick.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    3. Re:Powershell is sweet as hell by Junta · · Score: 1

      This is another round of the same thing WMI is, a bad replacement for a standard method.

      Thank goodness there are other voices out there calling out WMI (and by extension CIM/WBEM) for the crapfest it is.

      --
      XML is like violence. If it doesn't solve the problem, use more.
    4. Re:Powershell is sweet as hell by Anonymous Coward · · Score: 0

      Unix shells are pretty good on the output of Unix tools, ls -l being the only really difficult one.

      Unfortunately, any Linux tools that aren't expressly copied from an original Unix tool are absolute bollocks. Their outputs are like if `pwd`s output was

      The current working directory is
      ===> /home/smorrow/src <===

      which you won't easily pipe around or backtick. But that doesn't say anything about Unix proper.

      Also: Any Linux bullshit that prints progress bars. I think I prefer the Plan 9 way of putting percentages on stderr and having that piped to statusbar.

      I want to like this .Net OO strongly-typed stuff, especially for dates (I'd like to be able to use < and > on dates whether they're seconds since 1970, date(1)-style strings, or whatever), but it creates a difference between pipes and files then. A file will always be a weaky-typed sequence of bytes. A date in a logfile will never be a Date Object. unless you also want to teach your text editor about these Date Objects.

      Also, what's the output and data type of `{ A; B } | cat`, when A and B don't put out the same type?

    5. Re:Powershell is sweet as hell by Anonymous Coward · · Score: 0

      WMI pretty much ruins the experience :(

    6. Re: Powershell is sweet as hell by Anonymous Coward · · Score: 0

      You seem to be awfully invested in taking a giant shit on something which, if you don't like you are entirely free not to use. What's your agenda?

    7. Re:Powershell is sweet as hell by Anonymous Coward · · Score: 0

      The point of shell scripting is that for all of us non-dev sysadmins, we do not want to get into the crapfest that is full-on-coding, just to automate a task...

      Most of the 'automation' tools that have been written in the past 10yrs or so all seem designed to help developers be sysadmins - it's 'by programmers, for programmers'...

      Powershell is reinventing the wheel. Microsoft should have just put BASH/textutils on Windows & called it good... THAT would be real interoperability...

  11. Pansy shell by Anonymous Coward · · Score: 1

    Honestly, this 'new microsoft' is going to be the death of the Linux community.

    I miss the days when they just stared at their navel and ignored Linux/Android etc

    Their 'help' and 'openness' are pissing in our pool and going to confuse new kids when they choose the path of freedom

    rule 314: If it has the word 'power' in it, its not.

    1. Re:Pansy shell by Anonymous Coward · · Score: 0

      don't forget we have systemd working to destroy linux from the inside. I used to be a huge fan of RedHat but not so much now. Just because you can doesn't mean you should and new really isn't always better. ...a soon to be BSD advocate.

  12. Call me close-minded by Anonymous Coward · · Score: 0

    I'll NEVER accept anything from MS as a solution unless it is imposed.

  13. I'll answer by Megol · · Score: 1

    Yes.

  14. Wow. by ledow · · Score: 3, Insightful

    What the hell kind of sadist is going to manage their machines from a Linux machine running PowerShell?

    "Unsupported configuration" is the first hurdle that I'd foresee, followed by just being plain, unnecessarily painful.

    1. Re:Wow. by Anonymous Coward · · Score: 0

      What the hell kind of sadist is going to manage their machines from a Linux machine running PowerShell?

      Who knows? Maybe it will open a new refreshing way of doing things.

    2. Re:Wow. by Anonymous Coward · · Score: 0

      lolz - a Linux machine running PS. Yeah.

    3. Re:Wow. by Anonymous Coward · · Score: 0

      A masochist sadist maybe.

    4. Re:Wow. by MachineShedFred · · Score: 2

      This is for those shops that do everything in Visual Studio, host their stuff on Azure, and have that one or two pesky Linux box for a solution they just couldn't kluge together on Windows.

      Now they can manage those boxes with the rest of their environment.

      This isn't a solution for you or me, but in a Microsoft-centric shop, this might be exactly what they are looking for so that they don't have to throw out all their management in a wholesale replacement.

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
  15. Looks interesting but I am wary... by 140Mandak262Jamuna · · Score: 4, Interesting
    I was forced to move to a windows box ages ago by the company policy. Have been using cygwin, cygwin-X server and bash scripts extensively. So much so many of my colleagues think I am using a linux desktop. So getting something that runs natively in Windows looks attractive. But if I am going to learn something new, what advantages this powershell has that python does not? Cygwin + bash is cross platform enough for me to switch between ssh windows in linux boxes and my windows desktop. The run test suites I got an intern to whip up a python script.

    What does powershell has that python or perl does not have?

    --
    sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
    1. Re:Looks interesting but I am wary... by nazsco · · Score: 1

      one time an employer made me choose windows or Mac. Linux was verbotten.

      i got windows, installed putty... and that's about it.

    2. Re:Looks interesting but I am wary... by Anonymous Coward · · Score: 1

      That was silly. Choose the Mac next time and you don't have to install anything. It already has a Terminal app and ssh client. Especially if the company pays for it. Consider it punishment for not letting you use Linux on your laptop.

    3. Re:Looks interesting but I am wary... by benjymouse · · Score: 1, Insightful

      But if I am going to learn something new, what advantages this powershell has that python does not? Cygwin + bash is cross platform enough for me to switch between ssh windows in linux boxes and my windows desktop.

      Desired State Configuration (DSC) that FTFA was about, is definitely one such thing that PowerShell has that python has not. DSC is a *declarative* description of the configuration you want for a target system. You should think more in line of Chef or Puppet than Python. PowerShell DSC for Linux actually *uses* Python.

      The idea is that you use PowerShell to define a data structure (much like a Ruby hash) that describes the configuration of the node. DSC will itself resolve dependencies. If you require a feature DSC will ensure that the feature is installed - much like a package manager - but it actually interacts with the package manager. What package managers do not do is to configure the products once they are installed. This could be connection strings, IP addresses, user accounts.

      PowerShell DSC for Linux has "resources" for file system, user accounts, text file content, package managers (Yum, Apt, Zypper), scripts, daemons, ssh keys and more. You use those resources to describe how you want a system to look - like a Chef recipe. The resource description can be parameterized (it is just a PowerShell function and can take parameters like PS functions) so that the same resource description can be used for multiple targets with slightly different values.

      Once applied, DSC will ensure that the target is set up so that it matches the target. From there on it can also report on drift (e.g. more users created, files deleted/changed etc) and can warn about it and automatically bring the node back to the desired state (undoing the drift).

      --
      Reading slashdot one-liner: (irm http://rss.slashdot.org/Slashdot/slashdot).rdf.item | fl title,desc*
    4. Re:Looks interesting but I am wary... by 140Mandak262Jamuna · · Score: 1

      So this is just a sys-admin tool. Not a general purpose scripting language. Well, I am fine with cygwin + bash and will not bother about this powershell till it comes with a compelling feature that is cross platform.

      --
      sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
    5. Re:Looks interesting but I am wary... by ehiris · · Score: 1

      The AD authentication piece is pretty wonky in Cygwin.
      Managing cygwin groups that are related to AD groups is very buggy.
      Otherwise, I agree with you, cygwin provides soo much more through openssh and all the other packages you can install with it.

    6. Re:Looks interesting but I am wary... by benjymouse · · Score: 2

      So this is just a sys-admin tool. Not a general purpose scripting language.

      It is a general purpose scripting language.

      An object-oriented general purpose scripting language with a number of features that makes system administration easier.

      One example is DSC. It is a scripting language that can use the DSC *platform* to make sure that target systems are all configured the same way, albeit each with different parameters.

      Another example is workflows. Wake me up when bash or python can start a script that can survive system restarts and pick up and continue from where it was when the system restarted, complete with state, variables etc.

      --
      Reading slashdot one-liner: (irm http://rss.slashdot.org/Slashdot/slashdot).rdf.item | fl title,desc*
    7. Re:Looks interesting but I am wary... by Anonymous Coward · · Score: 0

      Wake me up when bash or python can start a script that can survive system restarts and pick up and continue from where it was when the system restarted, complete with state, variables etc.

      Wake me up when Windows doesn't need regular rebooting.

    8. Re:Looks interesting but I am wary... by Anonymous Coward · · Score: 0

      Sounds like alot of this can be done with kickstart already. And as for bash scripts that can survive restarts.... I have done that years ago using state files.

    9. Re:Looks interesting but I am wary... by Wolfrider · · Score: 1

      --If you're stuck on Windows, try mobaxterm. Way more features than putty.

      --
      .
      == WolfriderV6 == I'm willing to admit that *I just might* be wrong... Are you??
  16. oh boy by Anonymous Coward · · Score: 0

    Worked with PowerShell for Exchange 2007 and it's just too damn tedious(too much work for little gain), syntax obscure and just plain confusing at times, and a steep learning curve. "$_.", I mean seriously WTF! couldn't they just call it VAR or VAR$ or VAR_T? It's a good thing they didn't call it !@#$%^&. I guess it's all about selling MS books.

    1. Re:oh boy by MachineShedFred · · Score: 1

      $_ is a stolen construct from Perl.

      That was one of the things in PowerShell that I actually understood right away, from working with Perl for 10 years.

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
  17. I have a wish :) by advantis · · Score: 3, Funny

    At this rate, we'll see MS commit stuff to Wine not long before Christmas.

    I'll start a collection for all the tormented souls in Hell, as they'll need lots and lots of warm clothing as the ice age dawns upon them.

    --
    Question for religious people: where do unrepentant masochists go when they die?
  18. Security by AliciaBunny · · Score: 2

    Does Microsoft think there are not enough vulnerabilities in Linux?

    1. Re:Security by Anonymous Coward · · Score: 0

      between microsoft and the systemd crowd, Linux is doomed to be a windows clone. The OS had such potential and now it's being attacked from the inside and outside and a surprising number of folks actually support this destruction of a formerly decent OS.

  19. Admitting defeat by sproketboy · · Score: 1

    Nice.

  20. This is just a problem waiting to happen by Anon-Admin · · Score: 4, Interesting

    I only see this causing issues.

    1) Windows Admins writing power shell scripts to do stuff on linux boxes
          a) setting permissions to 777 because they got in the way.
          b) why will it not write the file to c:\?
          c) A power shell script developed and tested on Windows, then pushed out to all the servers and crashing the Linux boxes.
          c) Do you really believe that a Linux admin would allow a windows Admin to run a Power Shell script as root?
    2) Linux Admins being asked to manage windows servers because "You know Power Shell" (If they can get the Linux admin to manage the 300 windows servers on top of the existing 500 Linux servers he manages, it saves them headcount and $$$)

    Personally I see it going the way all the other Microsoft products have gone when they release a Linux version. It gets adopted by a few windows admins that are forced to work on linux. However the Linux admins and the bulk of Linux systems will never see it or use it. It will eventually get dropped because of the bugs, memory leaks, and issues that are found in it. Those that are never fixed because they concentrate on the Windows version and ignore the Linux version.

    Judging from history it is another Embrace, Extend, Extinguish attempt. Microsoft is just pulling from it's old bag of tricks.

    1. Re:This is just a problem waiting to happen by MightyMartian · · Score: 2

      Microsoft is running up against 40+ years of Bourne shell and its descendants. I doubt even Microsoft could really hope to defeat that kind of legacy.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    2. Re:This is just a problem waiting to happen by nine-times · · Score: 1

      More likely this is a feature that people want so that they can easily/automatically spin up Linux VMs in Hyper-V environments, without having to make use of a bunch of different scripts in a bunch of different languages.

    3. Re:This is just a problem waiting to happen by halivar · · Score: 1

      Your #1 scenario hinges on the Windows admins in question being illiterate morons, having just sat at a computer for the first time that morning.
      Your #2 scenario hinges on the Linux admin being too stupid to pick up cross-pollinated skills.

      I find both of these scenarios unlikely.

      Judging from history it is another Embrace, Extend, Extinguish attempt. Microsoft is just pulling from it's old bag of tricks.

      Extinguish what? Their own Powershell? Wouldn't deleting the source repository be faster and cheaper?

    4. Re:This is just a problem waiting to happen by MachineShedFred · · Score: 1

      Now only if there wasn't a free way to do that before...

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
    5. Re:This is just a problem waiting to happen by MachineShedFred · · Score: 1

      Extingush Chef and Puppet - the two open and pre-existing ways to do what DCM does.

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
    6. Re:This is just a problem waiting to happen by ToasterMonkey · · Score: 1

      Extingush Chef and Puppet - the two open and pre-existing ways to do what DCM does.

      I'm a Puppet admin, and sorry, but declarative instructions should be built into EVERYTHING.
      It's the way computing should be done.

      See what I did there?

    7. Re:This is just a problem waiting to happen by MachineShedFred · · Score: 1

      I'm a Chef admin, and there's no way we wholesale change out simple one or two liners in Ruby for the exhaustively verbose PowerShell equivalent.

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
    8. Re:This is just a problem waiting to happen by twokay · · Score: 1

      The GP is just a typical karma whoring attempt that worked out rather well:

      "Windows admins are stupid" -- check
      "Embrace, Extend, Extinguish" -- check
      "Microsoft writes buggy shitty software" -- check
      +5 Interesting -- sigh

      --
      Wannabe nerd.
  21. 'based on industry standards like OMI' by Junta · · Score: 1

    This is pretty misleading. OMI is Microsoft's pet 'standard'. They know the politics of DMTF to get things the 'standard' rubber stamp, but it has no bearing on actual applicability to the general environment. Basically going OMI means a pretty crappy set of flaky abstraction/instrumentation has to be put on the target that doesn't actually provide any more value than the open source competitors. CIM/WBEM has long languished for lack of anyone wanting to do it, and MS is trying to force the issue by doing OMI.

    --
    XML is like violence. If it doesn't solve the problem, use more.
  22. Not all rosy... by Junta · · Score: 1

    Powershell works that way because MS controlled the development of the vast majority of components that normal people interact with. It delivers a framework to let third parties do it 'the right way', but there's a lot of missing stuff and when you interact with the few CLI friendly executables that existed, you are right back there.

    Basically, you could use 'python' as a shell and have the same benefits, complete with the awkwardness of interacting with non-python executables. In MS world, this is less disastrous because non-python executables were pretty rare anyway and they did a good job of chaining instead to .Net stuff.

    --
    XML is like violence. If it doesn't solve the problem, use more.
    1. Re:Not all rosy... by Anonymous Coward · · Score: 0

      So what you're saying is because you don't know how to use the tool, it must suck. Look, I've managed lots of Linux and Windows. Love them both. Powershell is a killer solution for managing windows (and maybe linux one day) at scale. It's unfortunate you are trapped in your little bubble.

      "Basically, you could use 'python' as a shell and have the same benefits"

      No. You just don't get it. Being able to hook into .NET and getting all of the different products and 3rd party providers to play ball was effing genius. It's OOP and super easy to use once you understand the pipeline.

  23. History by os10000 · · Score: 2

    I hate and mistrust Microsoft as much as the next guy, but let me say this:

    * Mathematics is powerful because you take two numbers and an operator and as a result you get something that you can re-use in the same fashion

    * Unix is powerful because you take text files and an operator and as a result you get something that you can re-use in the same fashion

    * Relational DBMSs are powerful because you take two relations and an operator and as a result you get something that you can re-use in the same fashion

    * Monad Shell (now called Power Shell) is powerful because you take object streams and an operator and as a result you get something that you can re-use in the same fashion

    A Monad really is something where you put (typically) a constant into a function and get out a specialised function (like, you put 5 into your Monad and out comes a function that takes an integer and returns that same thing plus five).

    The Unix world has Perl Shell, Python Shell, and something that the Power Shell is a copy of, the Haskell Shell.

    https://github.com/chrisdone/h...
    http://www.yesodweb.com/blog/2...

    Best regards,

    Oliver

  24. Well there is a bigger issue... by Junta · · Score: 2

    Other organizations have tried and failed to do this sort of thing, simply because they are superimposing their own stuff on top of the stuff that really does the work. So you either have the code complexity of code managing the tooling that is really doing the work, or the code managing the work, doing the work, and some middleware that doesn't add meaningful value, but does add complexity. Having translation layers rarely does nice things for maintenance and stability, regardless of who is doing it and what the platform is.

    --
    XML is like violence. If it doesn't solve the problem, use more.
  25. As someone who ditched windows by kilodelta · · Score: 0

    Several years ago why would I want any Microsoft pseudo product on my Linux servers?

    Not as if Linux doesn't already have a Power Shell called BASH or Bourne Again SHell for you noobs.

    1. Re:As someone who ditched windows by MachineShedFred · · Score: 1

      You missed the point.

      This isn't about being able to install PowerShell on Linux as some kind of bash replacement. This is about being able to have an agent on Linux that talks to the same "Desired Configuration Management" system you're already using on Windows servers, and have already scripted things in PowerShell.

      This isn't for you, because you clearly aren't using Windows server with Microsoft's DCM solution, and you aren't looking to extend that solution to Linux instances. This is the Microsoft version of Chef or Puppet, with a cross-platform client. Using PowerShell.

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
    2. Re:As someone who ditched windows by MightyMartian · · Score: 1

      It's Microsoft's attempt to blur the line between *nix and Windows, with the hopes that future morons will go "Well, I guess I don't need *nix"

      Embrace, extend, extinguish. This is the same Redmond we know and love.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
  26. Know Microsoft, Know Pain by itomato · · Score: 1

    This is a workaround to enable (ancient) management methods to be effective in an environment that *many* people have already abandoned.

    Massive, heterogeneous, "Enterprisey" deployments benefit from far more complete tools than fucking PowerShell, and nobody I want to work with wants wholesale management of *any part of the thing* through a proprietary black box.

    1. Re:Know Microsoft, Know Pain by LordLimecat · · Score: 1

      Massive, heterogeneous, "Enterprisey" deployments benefit from far more complete tools than fucking PowerShell,

      I mean its not like PowerCLI is a thing required for the creation of AutoDeploy profiles for VMware, or like thats a major feature for using stateless hosts on datacenter-scale clusters. Its not like Storage arrays commonly require SSH to configure, but offer powershell as an alternative.

      Reading your post, I get the impression that you think that network switches, routers, and SANs are configurable via some webpage. I can promise you, when that is the case, its an awful experience. Generally "enterprisey" admins are sticking to CLI for those things because CLI reduces the chance of screwups: you can stage and review your change in notepad and then deploy it to hundreds of clients.

    2. Re:Know Microsoft, Know Pain by Anonymous Coward · · Score: 0

      This is a workaround to enable (ancient) management methods to be effective in an environment that *many* people have already abandoned.

      Massive, heterogeneous, "Enterprisey" deployments benefit from far more complete tools than fucking PowerShell, and nobody I want to work with wants wholesale management of *any part of the thing* through a proprietary black box.

      You sound paranoid. "proprietary black box." I doubt you have real reason to suspect this is a problem.

  27. bc isn't installed by itomato · · Score: 1

    Why do I need another utility when I can just use the proper syntax?

    1. Re:bc isn't installed by countSudoku() · · Score: 1

      Because you may not want to invent a wheel that is already available and has a man page to tell you how to use it. Go ahead and be my guest and write everything in your code from scratch, libs, and syntax only, never make a system call. THEN I'll know you're for reals, guy!

      Actually, my vi sessions with colored syntax are all I need for my uses; Perl, Python, Whitespace, C99, C69 and GWBASIC on a VAXVMS. And yes, my scripts can get over 500 lines for some complex, one-off tasks, but that's no problem with vi since it stores my syntaxen that falls off the screen! I mean, I scroll down and then back up again any my code is still there! It's like magic!

      --
      This is the NSA, we're gonna geet U h@x0r5! Also, what is a h@x0r5?
  28. Take a look at Windows' initialization system by itomato · · Score: 1

    Oh, that's right. You can't. It's not a PowerShell script.

    1. Re:Take a look at Windows' initialization system by LordLimecat · · Score: 1

      Too bad I've written many examples of such a thing, purely in powershell. Too bad lots of people do things like this. Too bad theres many examples on poshcode.

  29. Systemd will integrate powershell someday by stooo · · Score: 1

    Systemd will integrate powershell someday

    --
    aaaaaaa
    1. Re:Systemd will integrate powershell someday by lister+king+of+smeg · · Score: 1

      Systemd will integrate powershell someday

      don't be giving them any ideas

      --
      ---Saying gnome 3 is better than windows 8 not so much a compliment as it is damning with light praise.
    2. Re:Systemd will integrate powershell someday by Anonymous Coward · · Score: 0

      Doesn't it already? Poettering must be hitting himself for not including it yet as a hard dependency.

    3. Re:Systemd will integrate powershell someday by Anonymous Coward · · Score: 0

      Watch out--systemd is likely to incorporate Power Shell some day.

  30. PowersHell by Anonymous Coward · · Score: 0

    Sorry, couldn't resist.

  31. Next step by denisbergeron · · Score: 1

    First : Office on a Linux Variant (Android)
    Second : Code Text Editor
    Third : PowerShell tools
    (...)
    [last step] Abandon the costly development of the unsecure and buggy Windows OS and use only some new library à la Wine and a Windows-like graphics shell on a Linux Base OS
    (more profit less cost)

    --
    Ceci n'est pas une Signature !
    1. Re:Next step by hot+soldering+iron · · Score: 1

      Odd, I had that same thought. Back around the turn of the millennium.

      --
      When you want something built, come see me. If you want correct grammar and spelling, get a F*ing liberal arts student.
  32. CIM is really a widely adopted open standard by kervin · · Score: 2

    It is a lot easier to embrace an "open standard" when you developed it yourself, then donated it to a consortium.

    WBEM is a decades old open standard implemented by just about every major software and hardware manufacturer out there. It's shipped with just about every OS. The computer you are using right now probably has CIM implementation built in or at least available in the core OS.

    The standard is managed by the Distributed Management Task Force which includes most top software firms. Here is the Java JSR-48: WBEM Services Specification and Implementation for example.

    What Microsoft is giving the open-source community is a CIMON ( CIM Object Manager ) implementation. This is fully standards based and Microsoft is just donating the code. But as mentioned earlier Ubuntu and most OSes already ship with a lightweight CIMON.

  33. Basic operations by Anonymous Coward · · Score: 1

    Try to concatenate big files... Powershell FIRST load them in RAM before to get them concatenated... If the files are too large, the process fails. Cygwin is a better replacement in his own platform.

  34. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  35. I wonder if this integrates with SCCM by mordred99 · · Score: 2

    Part of SCCM is the DSC for Windows servers. What this allows is to validate (ie. scan) for changes to the default build for servers, desktops, and provides integrated reporting. While there are many tools to do this, it is free from MS (minus the OS and SQL DB). If adding Linux to this is a possibility, having your compliance and reporting in one tool, which can leave you from having to run tripwire enterprise or the like due to compliance requirements, might be a win.

    I am not saying it is the best thing on the planet, but if it does what the theory states, that would be a huge deal to have 1 less tool to manage to provide compliance reports.

    1. Re:I wonder if this integrates with SCCM by MightyMartian · · Score: 1

      I thought the entire intent of SNMP was to create a common management platform.

      Why oh why do we have to keep reinventing the wheel here? Well, because Microsoft needs to dominate in any way it can, even if it means imposing its own management tools on other operating systems.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
  36. No RPM or DEB packages? by hduff · · Score: 1

    I don't see any D/L links of the pages that are referenced, only an MSI installer.

    --
    "I believe in Karma. That means I can do bad things to people all day long and I assume they deserve it." : Dogbert
  37. Microsoft based industry standards? by DougPaulson · · Score: 1

    "DSC is in the same space as Chef and Puppet (and others); but unlike those, Microsofts attempts to build a platform/infrastructure based on industry standards"

    That one almost snuck through :)

  38. Re:Administrators? Administrators? Administrators? by mitcheli · · Score: 1

    Um, no. Keep your filthy Microsoft hands off of my system. Security! Security! Security!

    --
    Select from tblFriends where interesting >= 4;
  39. Henry Spencer said by Nikademus · · Score: 3, Insightful

    "Those who don't understand UNIX are condemned to reinvent it, poorly."

    --
    I gave up with the idea of an useful sig...
  40. apropos by Anonymous Coward · · Score: 0

    Becoming proficient with the command line can take many months (if not years).

    I like to make the habit of ensuring new users to the command line are exposed to these two commands: "apropos" and "man".
    "apropos" is good for jogging your memory about what command you may be looking for.

    http://en.wikipedia.org/wiki/Apropos_(Unix)