28 lines
490 B
Plaintext
28 lines
490 B
Plaintext
|
#!/bin/sh
|
||
|
start_time_sec=$( date +'%s' )
|
||
|
HOME=$(tput cup 0 0)
|
||
|
ED=$(tput ed)
|
||
|
EL=$(tput el)
|
||
|
printf '%s%s' "$HOME" "$ED"
|
||
|
|
||
|
cleanup(){
|
||
|
tput cnorm
|
||
|
exit
|
||
|
}
|
||
|
trap cleanup INT
|
||
|
|
||
|
|
||
|
tput civis
|
||
|
while true
|
||
|
do
|
||
|
diff=$(( $(date +'%s') - start_time_sec ))
|
||
|
ROWS=$(tput lines)
|
||
|
COLS=$(tput cols)
|
||
|
date --date "@$diff" +'%M:%S' | head -n $ROWS | while IFS= read LINE; do
|
||
|
printf '%-*.*s%s\n' $COLS $COLS "$LINE" "$EL"
|
||
|
done
|
||
|
printf '%s%s' "$ED" "$HOME"
|
||
|
sleep 0.1
|
||
|
done
|
||
|
tput cnorm
|