#!/usr/pkg/bin/bash function die { echo $@ >&2 exit 1 } function find_delta { shift # drop username delta=`expr $@` # calculate the delta in days } [ "$EUID" == "0" ] || die "Must be root to do this!" [ "$1" -a "$2" ] || die "Must specify username to expire and expiration date" now=`date +%s` # seconds since the epoch today=`expr $now / 86400` # divide by seconds in a day expiration=`awk -F : "\\$1 ~ \"$1\" {print \\$8}" /etc/shadow` yesterday=$((today - 1)) # prevent login by setting expiry to yesterday find_delta echo new delta: $((yesterday + delta))