Skip to content

Instantly share code, notes, and snippets.

View dfinke's full-sized avatar

Doug Finke dfinke

View GitHub Profile
$xlfile = "$env:TEMP\PSreports.xlsx"
Remove-Item $xlfile -ErrorAction SilentlyContinue
# Get-Process
$ecd = New-ExcelChartDefinition -XRange "A3:A7" -YRange "C3:C7" -Row 30 -Column 1 -Title "Report Process`nTotal Handles" -NoLegend
Get-Process | Select -First 5 |
Export-Excel $xlfile -AutoSize -StartRow 2 -TableName ReportProcess -ExcelChartDefinition $ecd
# Get-Service
Get-Service | Select -First 5 |
<#
.EXAMPLE
llm "what is the capital of spain" -provider openai
.EXAMPLE
llm "what is the capital of spain" -provider anthropic
.EXAMPLE
llm "what is the capital of spain" -provider gemini
#>
@dfinke
dfinke / CountryLoopup.ps1
Created November 27, 2013 16:15
Use a PowerShell hash table/associative array to translate a country abbreviation to its full name.
$CountryLookup = [ordered]@{
"AD"="ANDORRA"
"AE"="UNITED ARAB EMIRATES"
"AF"="AFGHANISTAN"
"AG"="ANTIGUA AND BARBUDA"
"AI"="ANGUILLA"
"AL"="ALBANIA"
"AM"="ARMENIA"
"AO"="ANGOLA"
"AQ"="ANTARCTICA"
param(
$Alive = 'O',
$Dead = ' ',
$SleepInSeconds = .5
)
<#
Conway's Game of Life
The classic cellular automata simulation. Press Ctrl-C to stop.
More info at: https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life
# Set up the constants:
$ObjectPronouns = 'Her', 'Him', 'Them'
$PossesivePronouns = 'Her', 'His', 'Their'
$PersonalPronouns = 'She', 'He', 'They'
$States = 'California', 'Texas', 'Florida', 'New York', 'Pennsylvania', 'Illinois', 'Ohio', 'Georgia', 'North Carolina', 'Michigan'
$Nouns = 'Athlete', 'Clown', 'Shovel', 'Paleo Diet', 'Doctor', 'Parent', 'Cat', 'Dog', 'Chicken', 'Robot', 'Video Game', 'Avocado', 'Plastic Straw', 'Serial Killer', 'Telephone Psychic'
$Places = 'House', 'Attic', 'Bank Deposit Box', 'School', 'Basement', 'Workplace', 'Donut Shop', 'Apocalypse Bunker'
$When = 'Soon', 'This Year', 'Later Today', 'RIGHT NOW', 'Next Week'
function generateAreMillennialsKillingHeadline {
@dfinke
dfinke / PS-CmdRunner.ps1
Created October 12, 2023 15:08
Used GPT4 Vision to take my sketch and create a WPF PS script
# Load necessary .NET libraries
Add-Type -AssemblyName PresentationFramework, WindowsBase
# XAML definition
[xml]$xaml = @"
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Posh Runner" Height="300" Width="400">
<Grid>
<Label Content="PS Cmd:" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top"/>
function Get-ChatCompletion {
param(
$messages,
$model = "gpt-3.5-turbo",
$functions,
$function_call,
$temperature = 0.7,
$max_tokens,
$stop,
$top_p = 1.0,
@dfinke
dfinke / grades-vlookup.ps1
Last active September 30, 2023 11:28
With PowerShell Excel - use VLOOKUP to explain data
$data = ConvertFrom-Csv @'
Name,Score,Grade
Ahmed,76
Bassam,91
Amira,42
Nadia,83
Joseph,36
Mary,45
Ashraf,81
Amal,56
$list1 = ConvertFrom-Csv @"
list1
Gigi
Jo
Chin
Phil
Jojo
"@
$list2 = ConvertFrom-Csv @"
@dfinke
dfinke / Clean-YouTubeTranscript.ps1
Last active September 17, 2023 12:43
This PowerShell script cleans up a YouTube transcript, from the Clipboard, for meeting notes
#Requires -Modules PowerShellAI
$str = Get-Clipboard
$prompt = "
Clean up this copy-paste from YouTube and make it suitable for pasting into Notion as meeting notes.
- Remove time stamps
- Remove line breaks
- Grammar, spell check and proper punctuation
$str