View gitchanges.sh
if ! git diff-index --quiet HEAD --; then | |
echo "I have changes to be pushed" | |
fi |
View hamilton.sh
function hamilton() { | |
results=$(curl -s https://www.formula1.com/en/results.html/$(date +%Y)/races.html) | |
gp=$(echo "$results" | nokogiri -e 'puts $_.at_xpath("//table[@class=\"resultsarchive-table\"]/tbody/tr[last()]/td[2]/a").text.strip' 2>/dev/null) | |
date=$(echo "$results" | nokogiri -e 'puts $_.at_xpath("//table[@class=\"resultsarchive-table\"]/tbody/tr[last()]/td[3]").text' 2>/dev/null) | |
winner=$(echo "$results" | nokogiri -e 'puts $_.at_xpath("//table[@class=\"resultsarchive-table\"]/tbody/tr[last()]/td[4]/span[2]").text' 2>/dev/null | tr 'A-Z' 'a-z') | |
echo -e "Did Hamilton win?\n${gp}: ${date}\n" | |
if [ "$winner" == "hamilton" ]; then | |
echo "YES. I'm guessing Ferrari botched team orders, and Williams probably came last." | |
else | |
echo "NO. ANYTHING IS POSSIBLE. REVEL IN THE UNPREDICTABLITY OF LIFE." |
View profiles.json
// To view the default settings, hold "alt" while clicking on the "Settings" button. | |
// For documentation on these settings, see: https://aka.ms/terminal-documentation | |
{ | |
"$schema": "https://aka.ms/terminal-profiles-schema", | |
"globals": { | |
"alwaysShowTabs": true, | |
"initialCols": 120, | |
"initialRows": 30, |
View mktemp.ps1
function mktemp { | |
param ( | |
[Parameter(mandatory=$false)]$Extension | |
) | |
$randomfile = [System.IO.Path]::GetRandomFileName() | |
if ($Extension) { | |
$randomfile = [System.IO.Path]::ChangeExtension($randomfile, $Extension) | |
} | |
return Microsoft.PowerShell.Management\Join-Path ([System.IO.Path]::GetTempPath()) "$randomfile" | |
} |
View check-windows-cert-expiry.ps1
# exit codes reflect this script's use as a Sensu check | |
# replace "YOUR ISSUER HERE" with the CA of your choice | |
param ( | |
[Parameter(Mandatory=$True)][int]$critical = $(throw "-critical - is required."), | |
[Parameter(Mandatory=$True)][int]$Warning = $(throw "-warning - is required."), | |
[Parameter(Mandatory=$False)][string]$computer = $env:COMPUTERNAME.Tolower() | |
) | |
$cert=$(get-childitem cert:LocalMachine\My -recurse | where-object { $_.Issuer -match "YOUR ISSUER HERE" } | select Subject,@{Name="DaysRemaining";Expression={($_.NotAfter).subtract([DateTime]::Now).days}}) |
View unifi_jail_file_transfer_from_host.sh
# get jail paths | |
root@freenas:~ > jls | |
JID IP Address Hostname Path | |
3 unifi /mnt/default/iocage/jails/unifi/root | |
root@freenas: > mv ~/keystore /mnt/default/iocage/jails/unifi/root/usr/local/share/java/unifi/data/ |
View unifi_dns_record.sh
# Create a DNS record in a Unifi USG | |
# ssh to USG | |
configure | |
# create an A record | |
set system static-host-mapping host-name HOSTNAME inet IPADDRESS | |
# create a CNAME | |
set system static-host-mapping host-name HOSTNAME alias CNAME |
View unifi_keystore_gen.sh
#!/bin/bash | |
# Assumptions: | |
# ./unifi.pem is the signed cert you wish to use | |
# ./unifi.key is the private key | |
# ./chain.pem is the CA chain for your issuer, ordered intermediates to root (descending) | |
# /var/lib/unifi/keystore is the appropriate path for your Keystore; may vary by distro (tested on Debian 8) | |
openssl pkcs12 -export \ | |
-in unifi.pem \ |
View ntpconfig.ps1
# from an elevated prompt | |
Stop-service w32time | |
w32tm /config /syncfromflags:manual /manualpeerlist:"server1.domain.tld,server2.domain.tld" | |
w32tm /config /reliable:yes | |
start-service w32time | |
# get sync status | |
W32tm /query /status |
View gitconfig
[alias] | |
lg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit | |
since = !git log $(git merge-base --fork-point master)..HEAD | |
files-changed="!f() { git log --name-only $1..HEAD --oneline --format=%n ${2:-.} | grep -v '^$' | sort | uniq; }; f" |
NewerOlder