Skip to content

Instantly share code, notes, and snippets.

@spig
spig / README.md
Last active April 5, 2021 19:37
Get IP Address for ddclient from a TP-LINK Router

Get IP Address for use in ddclient from a TP-LINK Router

Retrieve the local IP address by screen scraping the router's web page using a ruby script from a server behind the router

To use in ddclient:

use=cmd, cmd="ROUTER_IP= ROUTER_USER= ROUTER_PASS= /path/to/getRouterIPAddress.rb"

@spig
spig / removeOldJobs.sh
Created August 19, 2020 16:26
Remove old projects via the Jenkins API
# Replace JobName with the job name and ProjectName with the project name
for JOB in {246..254}
do curl -u $JENKINS_USER_NAME:$JENKINS_API_TOKEN -X POST http://$JENKINS_SERVER:$JENKINS_PORT/view/ProjectName/job/JobName/$JOB/doDelete
done
docker run \
--name ubuntu \
-e HOST_IP=$(ifconfig en0 | awk '/ *inet /{print $2}') \
-v /Users/hudson/Workspaces:/src \
-t -i \
ubuntu /bin/bash
@spig
spig / getText.js
Last active October 14, 2019 18:26
Get text of matching elements
Array.from(document.getElementsByClassName("CLASSNAME")).map(e => e.textContent).join(',');
@spig
spig / main.cpp
Last active September 19, 2019 01:30
int main(int args, const char * argv[]) {
int userNum;
cout << "Enter a number: ";
cin >> userNum;
while (userNum >= 4) {
userNum = userNum / 4;
cout << userNum << " ";
}
@spig
spig / dropboxcopy.bat
Created April 4, 2019 14:46
Copy all files in a folder to another folder with a pause and an infinite loop
goto :loop
:loop
echo Copying Files
copy *.jpg "C:\Users\vPro Demo\Dropbox\folder"
timeout /t 30
goto :loop
@spig
spig / processRow.js
Created October 27, 2018 17:11
Process a table row to get some text information from it
function processRow(row) {
let items = [... row.getElementsByTagName("td")]
let elementName = items[2].innerText
let elementSymbol = items[1].innerText
let atomicNumber = items[0].innerText
return elementName + ", " + elementSymbol + ", " + atomicNumber
}
var elements = [... document.getElementsByTagName("tr")].splice(1,).map(processRow).join('<br/>\n')
@spig
spig / open-network-port-through-firewall.txt
Last active May 15, 2018 14:32
Update firewall on CentOS 7
Taken from http://ask.xmodulo.com/open-port-firewall-centos-rhel.html
Open a Port on CentOS/RHEL 7
Starting with CentOS and RHEL 7, firewall rule settings are managed by firewalld service daemon. A command-line client called firewall-cmd can talk to this daemon to update firewall rules permanently.
To open up a new port (e.g., TCP/80) permanently, use these commands.
$ sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
$ sudo firewall-cmd --reload
@spig
spig / randomLengthSubstrings.swift
Created April 18, 2018 16:38
Random Length Substrings
static let titleArray = "Youth Theme 2015: O YE THAT EMBARK IN THE SERVICE OF GOD".split(separator: " ")
static let artistArray = "Elijah Thomas, Kyle Thorn, Maddie Wilson, Grayson O'Very, Anna Richey, Nick Neel, Baily Lawson".split(separator: ",")
public func getRandomTitle() -> String {
return getRandomLengthString(from: type(of: self).titleArray, separator: " ")
}
public func getRandomArtist() -> String {
return getRandomLengthString(from: type(of: self).artistArray, separator: ",")
}
@spig
spig / install_cups+airprint_centos7.md
Created February 15, 2018 14:52 — forked from jpawlowski/install_cups+airprint_centos7.md
Install and configure CUPS 2.1.2 on CentOS 7 (LXC running on Proxmox VE) host including AirPrint

Basic setup, e.g. enable ssh

yum -y install epel-release
yum -y upgrade
yum -y install openssh-server net-tools iputils psmisc less which man mc bash-completion bash-completion-extras bash-argsparse bind-utils traceroute htop mtr
echo "export HISTTIMEFORMAT='%F %T  '" > /etc/profile.d/history.sh
echo "export HISTIGNORE='ls -l:pwd:date:'" >> /etc/profile.d/history.sh
echo "export HISTCONTROL=ignoredups" >> /etc/profile.d/history.sh
systemctl enable sshd
systemctl start sshd