Skip to content

Instantly share code, notes, and snippets.

View thedavecarroll's full-sized avatar
🧑‍💻
PowerShell Summit

Dave Carroll thedavecarroll

🧑‍💻
PowerShell Summit
View GitHub Profile
@thedavecarroll
thedavecarroll / cibuild
Created August 27, 2018 03:23
CI Build Script
#!/usr/bin/env bash
set -e # halt script on error
echo
echo "------------------------------------------------------------------------------------------------------------------------"
if [ "$TRAVIS_PULL_REQUEST" != "false" -a "$TRAVIS_BRANCH" == "comments" ]; then
echo
echo "Building site for pull request for $TRAVIS_BRANCH..."
bundle exec jekyll build --config _config.yml --source . --destination ./docs
@thedavecarroll
thedavecarroll / Get-Sysinternals.ps1
Last active September 5, 2018 02:03
Download Updated Sysinternals Suite Tools
function Get-Sysinternals {
[CmdLetBinding()]
param(
[string]$InstallLocation
)
if ($InstallLocation) {
Get-ChildItem -Path $InstallLocation | Select-Object -Property Name,Length,LastWriteTime,@{l='Updated';e={Get-Date $_.LastWriteTime -Format d}}
} else {
$DockerImages = @{
Path = 'function:global:Update-DockerImages'
Value = {
try {
Invoke-Expression -Command 'docker images --format "{{.Repository}}" | Where-Object {$_ -ne "<none>"} | Foreach-Object { docker pull $_ }'
}
catch {
Write-Error -ErrorRecord $_
}
}
@thedavecarroll
thedavecarroll / IronScripter-2019-06-28-Output.txt
Last active July 5, 2019 17:42
IronScripter Challenge June 28, 2019
KeyInterval: 1,12
Message: PracticePowerShellDaily
KeyInterval DecodedMessage
----------- --------------
1,1 PkTr2sz2*cF-raz7GuD4w6U#gctK3E@Bt1aYQPic%705ZvAeW6jePRfpmI)Hy^LoowCnbJdOSi9Mber#)ieU*f2Z6MSh7VuD5a(hsv8el1oWZO7lpKyJlDz$-jI@tT23Raikq=F&wB6c%Hly
1,2 PTrsz*c-rz7uDw6#gtKE@t1YQic70ZveWjeRfmIHyLowCbJOS9Mer)iU*2ZMS7VD5(hv8l1WZ7lKylD$-I@T2RakqF&B6%Hy
1,3 Pr22*-r7G4w#gK3BtYQc%5ZeWePpmHyoonbOSMb#)U*Z6h7D5hselWZlpJl$-@t3Rkq&wc%y
1,4 P2scFz74wgcE@aYc%Zv6jfpHyowJd9M#)*fMSuDhsl1O7yJ$-tTaiF&c%
1,5 Psz-ruD#gE@YQ70eWRfHywCOSerU*MSD5v8WZKy$-T2kqB6y
@thedavecarroll
thedavecarroll / Send-SiteMap.ps1
Created August 10, 2019 03:52
Send SiteMap to Search Engines
function Send-SiteMap {
[CmdLetBinding()]
param(
[Parameter(Mandatory,ValueFromPipeline)]
[ValidateNotNullOrEmpty()]
[ValidateScript({$_ -match '\/.+?.xml$'})]
[uri]$Uri,
[switch]$ShowEncodedUrl
)
@thedavecarroll
thedavecarroll / Get-Uname.ps1
Last active October 9, 2019 18:38
IronScripter Challenge October 8, 2019
function Get-Uname {
[CmdLetBinding(
DefaultParameterSetName='KernelName'
)]
param(
[Parameter(ParameterSetName='All')]
[Alias('a')]
[switch]$All,
[Parameter(ParameterSetName='KernelName')]
@thedavecarroll
thedavecarroll / Get-RecycleBin.ps1
Last active October 31, 2019 14:02
IronScripter Challenge - October 30, 2019 - Raise the Dead
function Get-RecycleBin {
[CmdletBinding()]
param(
[switch]$Usage
)
begin {
if ($PSEdition -eq 'Core' -And !$IsWindows) {
'This function only works on Windows.' | Write-Warning
return
@thedavecarroll
thedavecarroll / Get-GitLog.ps1
Last active December 19, 2019 18:13
A PowerShell function for reading the git log of a local repository which is returned as an array of PSCustomObjects.
function Get-GitLog {
[CmdLetBinding(DefaultParameterSetName='Default')]
param (
[Parameter(ParameterSetName='Default',ValueFromPipeline,Mandatory)]
[Parameter(ParameterSetName='SourceTarget',ValueFromPipeline,Mandatory)]
[ValidateScript({Resolve-Path -Path $_ | Test-Path})]
[string]$GitFolder,
[Parameter(ParameterSetName='SourceTarget',Mandatory)]
@thedavecarroll
thedavecarroll / 1 - WordPressApi.psm1
Last active December 22, 2019 18:49
IronScripter Challenge - December 17, 2019 - A PowerShell Challenge for Challenges
function Get-WPSite {
[CmdLetBinding()]
param(
[Parameter(Mandatory)]
[uri]$Url
)
if ($Url.AbsoluteUri -notmatch 'wp-json') {
[uri]$Url = $Url.AbsoluteUri,'wp-json' -join '/'
}
@thedavecarroll
thedavecarroll / Test-MarkdownFileLinks.ps1
Last active February 2, 2020 21:36
Test Links in Markdown Files with PowerShell (and Regex)