Skip to content

Instantly share code, notes, and snippets.

@damianknopp
damianknopp / rotN.java
Last active February 28, 2023 21:47
decode rot N
import java.nio.file.*;
Path p1 = Path.of("rot.txt");
String cipher = Files.readString(p1);
BiConsumer<String, Integer> decode = (cipher, rot) -> {
char[] cipherArray = cipher.toLowerCase().toCharArray();
for (int i = 0; i < cipherArray.length; i++) {
if (!Character.isLetter(cipherArray[i])) {
continue;
@damianknopp
damianknopp / docker-exec.sh
Created December 17, 2019 00:36
docker-exec shell into first running container
#!/bin/bash
# log into the first running container
docker exec -i -t $(docker ps -a -f status=running -q) sh
@damianknopp
damianknopp / ssh_config.jinja
Last active April 28, 2022 23:35
ssh_config.jinja
# salt \* slsutil.renderer /home/centos/git/proj1/aws/templates/ssh_config.jinja 'jinja' context='{ cluster: "c1", key_dir: "key1", entries: [ { name: "name1", hostname: "hostname1", user: "user1"}] }'
## Begin salt managed {{ cluster }} servers
{%- set i = 0 %}
{%- for entry in entries %}
{%- set i = i + 1 %}
# {{ entry.name }}
Host {{ entry.name }}
HostName {{ entry.hostname }}
User {{ entry.user }}
IdentityFile {{ key_dir }}{{ cluster }}.pem
@damianknopp
damianknopp / add-ts-to-react-and-webpack.sh
Created June 15, 2020 16:41
add-ts-to-react-and-webpack.sh
#!/usr/bin/env bash
# eject react starter and run
yarn add --dev fork-ts-checker-webpack-plugin \
typescript \
@types/node \
@types/react \
@types/react-dom \
@types/react-redux \
@types/jest \
@damianknopp
damianknopp / free-port.sh
Created June 12, 2020 15:22
free-port.sh
kill -9 $(lsof -t -i:3000)
@damianknopp
damianknopp / ssm-ping-status.sh
Created May 8, 2020 16:25
ssm-ping-status.sh
#!/usr/bin/env bash
instance=${1:-unk}
aws ssm describe-instance-information --filter "Key=InstanceIds,Values=${instance}"
@damianknopp
damianknopp / simple-logstash-elk-grok.txt
Created May 7, 2020 17:01
simple-logstash-elk-grok.txt
54.xx.xxx.xxx - - [07/May/2020:13:18:12 +0000] "GET / HTTP/1.1" 200 9877 "-" "kube-probe/1.16"
%{IP:ip} \- \- \[%{NUMBER:day}/%{DATA:month}/%{NUMBER:year}:%{DATA:time} +%{NUMBER:offset}\] "%{WORD:method} %{URIPATH:path} %{DATA:protocol}" %{NUMBER:status} %{NUMBER:size} %{QS:dash3} %{QS:browser}
{
"offset": "+0000",
"method": "GET",
"year": "2020",
"ip": "54.xx.xxx.xxx",
"dash3": "\"-\"",
"path": "/",
@damianknopp
damianknopp / fio.sh
Created April 22, 2020 01:39
aws-fio.sh
# https://aws.amazon.com/blogs/aws/new-burst-balance-metric-for-ec2s-general-purpose-ssd-gp2-volumes/
fio --filename=/dev/nvme2n1 --rw=randread --bs=16k --runtime=60 --time_based=1 --size=64m --iodepth=32 --ioengine=libaio --name=gp2-16kb-burst-bucket-test
@damianknopp
damianknopp / gitconfig
Last active April 17, 2020 14:24
gitconfig
[alias]
up = fetch --all -p
clean-branches = !git branch -avv | grep gone | cut -d ' ' -f 3 | xargs git branch -D
stash-diff = stash show -p stash@{0}
stash-files = stash show --name-only
dlg = log --oneline --decorate --graph
[user]
name = damianknopp
email =
[core]
@damianknopp
damianknopp / user_data.sh
Created April 2, 2020 18:03
user_data.sh
# sudo apt install chrony -y && chronyc activity
# https://aws.amazon.com/blogs/aws/keeping-time-with-amazon-time-sync-service/
# set /etc/chrony/chrony.conf to not use ntp pool but local meta ip with
# server 169.254.169.123 prefer iburst
# restart chrony