Skip to content

Instantly share code, notes, and snippets.

nathants nathants

Block or report user

Report or block nathants

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@nathants
nathants / pys.sh
Last active Jan 13, 2020
3 bash functions for quick python oneliners
View pys.sh
# exec a python snippet and print the result, stdin is not used
# >> p '60*60*24'
# 86400
p() {
python -c "
$PY_IMPORTS
val = $@
if val:
if isinstance(val, list):
@nathants
nathants / email.py
Last active Dec 18, 2019
a cli to interact with email via imap and smtp
View email.py
#!/usr/bin/env python3
from email.header import decode_header
from email.mime.text import MIMEText
import re
import datetime
import email
import os
import os
import smtplib
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 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
@nathants
nathants / aws-rotate-access-key.py
Last active Jun 18, 2018
quickly rotate your aws access key
View aws-rotate-access-key.py
#!/usr/bin/env python3.6
import boto3
import os
import pprint
import sys
import termios
import tty
"""
@nathants
nathants / monitor-usage.py
Last active Jun 18, 2018
simple server usage monitoring, writing json to stdout. depends on psutil and python3.4, but should work with any python version with minor modifications.
View monitor-usage.py
#!/usr/bin/env python3.4
"""
simple server usage monitoring, writing json to stdout. depends on
psutil and python3.4, but should work with any python version with
minor modifications.
to add usage to your log: $ nohup python3.4 usage.py 3 >> /var/log/your_normal_app_log.log &
View license.txt
All public gists https://gist.github.com/nathants
Copyright 2012-present, Nathan Todd-Stone
MIT License, http://www.opensource.org/licenses/mit
View pg-util.py
#!/usr/bin/env python2.7
"""
chunked backup and restore utilities for postgres via s3 with
minimal local disk/ram requirements.
dependencies:
- pip install argh awscli
- have awscli creds configured
"""
View s3-du.py
"""
prints a table of the largest prefixes in an s3 bucket, along with some meta-data.
usage:
$ python3.4 s3_du.py -h
usage:
$ aws s3 ls $BUCKET --recursive | python3.4 s3_du.py | head -n 100 | columnt -t
example:
View log-watcher.py
#!/usr/bin/env python3
import functools
import sys
import time
import collections
import threading
import queue
email_to = '_@_.com'
email_subject = 'error'
You can’t perform that action at this time.