View grid.py
#!/usr/bin/env python3 | |
# type: ignore | |
import argh | |
import json | |
import sys | |
import time | |
import blessed | |
term = blessed.Terminal() |
View tail_tinysnitch_logs.sh
# tinysnitch: https://github.com/nathants/tinysnitch | |
# pys: https://gist.github.com/nathants/741b066af9faa15f3ed50ed6cf677d67 | |
# color: https://gist.github.com/nathants/336bc5e501ad174aeeb7986f2b0633e4 | |
# colorful snitch logs | |
tail -f /tmp/tinysnitchd.log \ | |
| grep --line-buffered -e allow -e deny \ | |
| grep --line-buffered -v 1.1.1.1:53 \ | |
| pys 'i.split("INFO")[-1]' \ | |
| stdbuf -oL sed -E 's:\|.+>::' \ |
View color.py
#!/usr/bin/env python3 | |
""" | |
colorize parts of lines to arbitrary colors | |
usage: echo a b c | color a:green c:red | |
usage: echo /a/b/c | sep=/ color a:green c:red | |
usage: echo /a123/b/c | sep=/ sub=y color a:green c:red |
View pys.sh
PY_IMPORTS=" | |
import datetime | |
import string | |
import random | |
import math | |
import time | |
import itertools | |
import collections | |
import functools | |
import fcntl |
View email.py
#!/usr/bin/env python3 | |
from dateutil import parser | |
from email.header import decode_header | |
from email.mime.text import MIMEText | |
import contextlib | |
import re | |
import datetime | |
import email | |
import os | |
import os |
View auto-restart.sh
#!/bin/bash | |
set -eou pipefail | |
# usage: auto-restart.sh python program.py | |
trap 'exit 1' SIGINT | |
count=$(ps -eo args | grep ^/bin/bash | grep "auto-restart $*"$ | grep -v grep | wc -l) | |
if (($count > 2)); then | |
echo already running: auto-restart $@ >&2 |
View rotate-logs.sh
#!/bin/bash | |
set -euo pipefail | |
# usage: myprogram.py | rotate-logs /tmp/myprogram.log [1000000] | |
file=$1 | |
max_lines=${2:-1000000} | |
touch $file | |
line_count=$(cat $file | wc -l) |
View license.txt
All public gists https://gist.github.com/nathants | |
Copyright 2020-present, Nathan Todd-Stone | |
MIT License, http://www.opensource.org/licenses/mit |
View pip-upgrade.py
#!/usr/bin/env python3 | |
""" | |
check for updates and optionally upgrade packages via pip | |
""" | |
import os | |
import subprocess | |
import sys | |
import termios |
View aws-rotate-access-key.py
#!/usr/bin/env python3 | |
import boto3 | |
import os | |
import pprint | |
import sys | |
import termios | |
import tty | |
""" |
NewerOlder