Skip to content

Instantly share code, notes, and snippets.

@bigbadmoshe
bigbadmoshe / 3 ways to sort a list unique.md
Created June 14, 2023 09:46
3 ways to sort a list unique
@bigbadmoshe
bigbadmoshe / Dotnet or not Dotnet.md
Last active April 3, 2023 10:09
Dotnet or not Dotnet

Dotnet or not Dotnet this is the question we will ask in this post

Lets find out if the .NET .Where() method is significantly faster than their equivalent in native PowerShell In this post, we'll compare the performance of native PowerShell methods with their .NET counterparts, specifically focusing on the .Where() method. We'll also use the .net[Linq.Enumerable] class to analyze a different dataset - passenger data from the Titanic - instead of the usual Active Directory user data.

The Code We'll be using three different methods to compare performance:

# Define a collection of objects
@bigbadmoshe
bigbadmoshe / ps_cheatsheet.ps1
Last active June 29, 2023 14:24
powershell cheatsheet
# powershell cheatsheet
##############################################
# restart computer
Restart-Computer -Force # force restart
# handbrake batch processing
$filelist = Get-ChildItem D:\Video\ -Filter *.wmv
@bigbadmoshe
bigbadmoshe / Get-WindowsVersion.ps1
Last active November 28, 2022 14:44 — forked from SMSAgentSoftware/Get-WindowsVersion.ps1
Finds the Windows version including Edition, Version and OS Build numbers for local or remote computers
function Get-WindowsVersion
{
[CmdletBinding()]
Param
(
[Parameter(
Mandatory = $false,
ValueFromPipelineByPropertyName = $true,
ValueFromPipeline = $true
)]
@bigbadmoshe
bigbadmoshe / New-WPFMessageBox.ps1
Last active July 2, 2023 13:19 — forked from SMSAgentSoftware/New-WPFMessageBox
PowerShell function to display a customizable WPF message box / window
Function New-WPFMessageBox {
# For examples for use, see my blog:
# https://smsagent.wordpress.com/2017/08/24/a-customisable-wpf-messagebox-for-powershell/
# CHANGES
# 2017-09-11 - Added some required assemblies in the dynamic parameters to avoid errors when run from the PS console host.
# Define Parameters
[CmdletBinding()]
@bigbadmoshe
bigbadmoshe / New-CustomToastNotification.ps1
Created November 28, 2022 12:48 — forked from SMSAgentSoftware/New-CustomToastNotification.ps1
Create your own toast notification with WPF and PowerShell
# Demo script to display a custom 'toast' notification
# Load required assemblies
Add-Type -AssemblyName PresentationFramework, System.Windows.Forms
# User-populated variables
$WindowHeight = 140
$WindowWidth = 480
$Title = "New Blog Post by SMSAgent!"
$Text = "Trevor Jones has posted a new blog: Create a custom toast notification with WPF and PowerShell. Click here to read."
@bigbadmoshe
bigbadmoshe / New-WoodyRestartNotification.ps1
Created November 28, 2022 11:18 — forked from SMSAgentSoftware/New-WoodyRestartNotification.ps1
Creates a Toy Story-themed restart notification in top left of primary screen
Add-Type -AssemblyName PresentationFramework,System.Windows.Forms
# Set screen working area, and start and finish location of the window 'top' property (for animation)
$workingArea = [System.Windows.Forms.Screen]::PrimaryScreen.WorkingArea
$TopStart = $workingArea.Top - 449
$TopFinish = $workingArea.Top + 10
[xml]$Xaml = @"
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
@bigbadmoshe
bigbadmoshe / ASCIIART.md
Last active April 21, 2024 11:39
PowerShell Snippets

ASCIIART

$ASCIIART = "ICAgICAgICAgICAgICAgICAgIExPQURJTkcuLi4gICAgICAgICAgICAgICAgICAK4pWU4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWXCuKVkSAwJSDilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojilojiloggMTAwJSDilZEgCuKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVnQogICAgICAgICAgICAgICAgICAgQ09NUExFVEVEISAg"