Skip to content

Instantly share code, notes, and snippets.

View fatherjack's full-sized avatar
💭
doing things

fatherjack

💭
doing things
View GitHub Profile
# i - copy the complete URL from your browser
# ii - run this line of powershell
# iii - go to document and paste
# iv - content pasted is the title of the web page
# useful for when you want to build aset of reference and need page title and url in the document
(((Get-Clipboard).Split('/')[-1]).Split('?')[0]).Replace("-", " ") | Set-Clipboard
@fatherjack
fatherjack / WSUS offline updates
Last active September 5, 2018 10:19
Sometimes you cant get a WSUS update from the internet as the WSUS server is on an air-gapped network. Get the cab file from these links and save it to the root of C: on the update server.
Need an offline version of a WSUS update file ?
Go to:
https://blogs.technet.microsoft.com/mempson/2011/08/23/wsusscn2-cab-manual-download-location/
the link then takes you to where the CAB actually comes from:
http://go.microsoft.com/fwlink/?LinkId=76054
PowerShell that references SQL Server Configuration properties and compares RunValue to ConfigValue and shows of there are pending changes
[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.SMO') | Out-Null
[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.SMOExtended') | Out-Null
$Server = "$ENV:COMPUTERNAME\sql2016"
$SMOServer = new-object ('Microsoft.SQLServer.Management.Smo.Server') $Server
$($smoserver.Configuration | Select-Object -ExpandProperty properties | Select-Object displayname, runvalue, configvalue, @{name = "Diff"; expression = {$(if($_.runvalue -ne $_.configvalue){"* difference *"}else{"same"})}}) | Format-Table -a
Function TimeToSanta {
<#
.Synopsis
Show how long you have to wait to open your presents
.DESCRIPTION
Be able to leave your shopping to the very last minute with this state-of-the-art function to show
how long is left to 25th Dec 09:00. Two variations exist depending on whether the information is to be shown
at the console prompt or as a message
.EXAMPLE
TimeToSanta -purpose console
"A curmudgeon’s reputation for malevolence is undeserved. They’re neither warped nor evil at heart. They don’t hate mankind, just mankind’s absurdities. They’re just as sensitive and softhearted as the next guy, but they hide their vulnerability beneath a crust of misanthropy. They ease the pain by turning hurt into humor. They attack maudlinism because it devalues genuine sentiment. Nature, having failed to equip them with a serviceable denial mechanism, has endowed them with astute perception and sly wit. Curmudgeons are mockers and debunkers whose bitterness is a symptom rather than a disease. They can’t compromise their standards and can’t manage the suspension of disbelief necessary for feigned cheerfulness. Their awareness is a curse. Perhaps curmudgeons have gotten a bad rap in the same way that the messenger is blamed for the message: They have the temerity to comment on the human condition without apology. They not only refuse to applaud mediocrity, they howl it down with morose glee. Their versions
Function Change-Time {
<#
.SYNOPSIS
To convert a larger time measure to a smaller measure ie how many milliseconds in an hour
.DESCRIPTION
Function takes a duration(a) and a measure(b) and returns an amount in a preferred measure(c)
eg 4(a) hours(b) milliseconds(c)
function Compare-Array
{
param(
[array]$Ref,
[array]$Diff
)
$max = [math]::Max($Ref.Length,$Diff.Length)
for($i = 0; $i -lt $max; $i++){
@fatherjack
fatherjack / PowerShell Prompt.ps1
Last active August 23, 2019 21:32
provides some useful information to your PowerShell prompt
function Prompt {
<#
.Synopsis
Your custom PowerShell prompt
# borrowing heavily from https://dbatools.io/prompt but formatting the execution time without using the DbaTimeSpanPretty C# type
.Description
Custom prompt that includes the following features:
@fatherjack
fatherjack / New-ToDoList
Last active August 30, 2019 10:29
Creates a really quick To Do list in a notepad file, just when you want to make some notes for things to get done today
function New-ToDo {
<#
.SYNOPSIS
Creates quick To Do list in Notepad
.DESCRIPTION
Creates quick To Do list in Notepad
.PARAMETER List
comma separated list of items to put in to do list
function Read-SQLConfigFile {
<#
.SYNOPSIS
Takes configuration file and shows features that are being set
.DESCRIPTION
Function to show what features and settings are being adjusted by the configuration file. Allows for comparison of
config files when combined with Compare-Object
.EXAMPLE