@SgtAwesomesauce@injinj@reavessm@MichaelLindman Spawned a new conversation so we didn’t get too off topic SGTAwesome, you were saying, if asked to use PowerShell that’d be a resume generating event?
In my old sysadmin gig, I would have paid for this. We were issued Macbook Pros and had to RDP into Windows boxes to launch PowerShell scripts. This would have solved so many problems. Honestly impressed with the number.
Noteworthy
PowerShell 6 is also known as “PowerShell Core”, which strips away a lot of the core modules of PowerShell 5, such as AD management and other things. You will have to PSRemote into a box that has PowerShell 5 to utilize or import those modules. At least, that’s how it was a few months ago. Things might have changed.
I have powershell installed on both my Mac and my Linux box, but it’s pretty useless on those platforms until they enable powershell remoting to be properly cross-platform.
I use powershell a bit in my Windows admin work (get-adcomputer | restart-computer -force) j/k … mostly.
I’ve written a couple of powershell modules for internal use - bulk user account generation, user termination, etc.
I’m been drilling it into my minion (PFY, me BOFH) that if he needs to do something more than 5-10 times in a row then he should be looking to see how difficult it is to script it. Work smarter, not harder, etc.
It takes some getting your head around (you need to get your head space out of piping text around and more into SQL style select statements and piping objects), but Powershell is MUCH more powerful than the traditional unix command line. When it works.
Yeah, when it first released it was pretty lackluster for me as well. I had it on all three.
The automation is key, that’s what it was built for. We had guys start small that are now contributing actively to the projects via PowerShell and C#.
Interfacing with MS SQL Server (DBA Tools)
Bulk interfacing with Active Directory or Exchange
Automation
Infrastructure as Code
Windows never claimed to be Unix. Technically, neither is GNU (GNU’s Not Unix).
If you don’t have a use case for PowerShell, that’s fine. But there is an entire ecosystem of incredible developers, systems engineers, database admins, and architects that use PowerShell every day to contribute to DevOps culture.
StackExchange uses PowerShell and C# as their primary stack.
PowerShell works with Objects instead of text, like the Bash/Linux shells.
I’m genuinely keen to see what becomes of powershell.
It’s been in development for almost/about 15 years at this point (started as monad shell on Windows 2003 IIRC).
It would be cool if it gained traction on other platforms because much as it confuses me and much as ps-remoting often breaks or times out, and slow as it is… the power at your fingertips is truly amazing. Having that as a cross-platform thing would be neat.
As they say, even a broken clock is right twice a day. Microsoft does a lot of stuff I don’t like, but occasionally they put something out that is genuinely neat. Powershell is one of those things, I think. Active Directory is another.
edit:
Powershell can be extended to interface to pretty much anything via additional modules. You can also poke at most things in windows which don’t have a module via interfacing directly with WMI. Sure you can do that with VBscript, but Powershell its often a 1 liner…
Actuay I was going to look into the automation stuff. All I know for automation is apple’s automator and uh I don’t think thats the most apt comparison.
That is interesting. It looks like the vscode-redis pulls in node js. I’m curious of the performance difference between marshalling PoSH objects through node vs through .Net. At what point does it make a big enough difference where a .Net module makes sense?
Has anyone compared the perf of say Python scripts vs PoSH scripts? These seem to be the two major devops toolbox options. With Python, I could link in C code to for data intensive activities. With PoSH, it appears that .Net is where I would have to go, and I haven’t found a way of doing that under LInux.