PowerCLI one-liner to validate ESXi root passwords.
· โ˜• 2 min read · ๐Ÿค– Javy de Koning
Below is a PowerCLI one-liner you can use to validate if all your root passwords are what you expect them to be. get-vmhost | %{ $null = connect-viserver $_.name ` -user root -password "MyFakePassword" -EA 0 if (-not ($?)) { write-warning "Password failed for $($_.name)" } else { Disconnect-VIServer $_.name -force -confirm:$false } } Reset a known password over PowerCLI Below is a short code snippet to help you change your root password on ESXi hosts.

Faster Dir Size calculations in Powershell!
· โ˜• 3 min read · ๐Ÿค– Javy de Koning
Get-ChildItem is probably the command that’s most used when working in PowerShell console. Next to file-system operations the command is also excellent to browse objects accessible via PSDrive(s). Most sysadmin’s are probably familiar with tools such as TreeSize and/or WinDirStat. Did you ever wonder why these tools are so much faster than Get-ChildItem? There is even a PowerShell TreeSize implementation available on the PSGallery, however it’s pretty slow when running on large file-servers.

Powershell 5: collection is read-only.
· โ˜• 2 min read · ๐Ÿค– Javy de Koning
Powershell 5: An error occurred while creating the pipeline Today I was working with a Server 2016 TP5 server over PSR and I ran into this issue with one of my scripts: Do-Something An error occurred while creating the pipeline. + CategoryInfo : NotSpecified: (:) [], RuntimeException + FullyQualifiedErrorId : RuntimeException This script has been working fine on other systems so far so I was a bit confused. Google didn’t bring me much results so I decided to run the script locally on my Windows 10 machine and ended up with this:

How to kill a service stuck in pending state.
· โ˜• 2 min read · ๐Ÿค– Javy de Koning
WinRM โ€˜StopPending’ issues Recently I logged into a machine and ran โ€˜Enable-PSRemoting -Force’ to end up with error code โ€˜2150858770’. WinRM service was in โ€˜StopPending’ state: Enable-PSRemoting -force WinRM has been updated to receive requests. WinRM service started. Set-WSManQuickConfig : <f:WSManFault xmlns:f="http://schemas.microsoft.com/wbem/wsman/1/wsmanfault" Code="2150858770" M achine="blabla.local"><f:Message>The client cannot connect to the destination specified in the request. Verify that the service on the destination is running and is accepting requests. Consult the logs and documentation for the W S-Management service running on the destination, most commonly IIS or WinRM.

Write-Progressโ€ฆ The proper way!
· โ˜• 2 min read · ๐Ÿค– Javy de Koning
Write-Progress Issues So, you wrote a script and included nifty progress bar, fairly simple. But your script runs slow, especially in a Powershell terminal. Let me explain how you can address this issue. First, the relevant part of the script: for ($i=0; $i -le 10000; $i++) { Write-Progress -Activity Testing -Status something -PercentComplete (($i/10000)*100) } As an example let’s tun it in the ISE, wrapped in Measure-Command to time the performance and…

Resume
· โ˜• 0 min read
My web resume