mirror of
https://github.com/tiyn/dotfiles.git
synced 2025-04-19 16:27:45 +02:00
Compare commits
No commits in common. "80de5641a347cc5479f3441fc355e18d0310cde1" and "415f14234ba30aaa2e9001e9cdf5221229f4c41c" have entirely different histories.
80de5641a3
...
415f14234b
@ -1,52 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
help="""
|
||||
usage: timer [option] [args]
|
||||
options:
|
||||
-c SECONDS Count down from given amount of seconds
|
||||
-s Start stopwatch
|
||||
-h Display this message
|
||||
"""
|
||||
|
||||
max_seconds=86400
|
||||
|
||||
countdown() {
|
||||
start="$(( $(date '+%s') + $1))"
|
||||
while [ $start -ge $(date +%s) ]; do
|
||||
time="$(( $start - $(date +%s) ))"
|
||||
if [ $time -ge $max_seconds ]; then
|
||||
echo "Maximum number of seconds ($max_seconds) for countdown surpassed."
|
||||
exit
|
||||
fi
|
||||
printf '%s\r' "$(date -u -d "@$time" +%H:%M:%S)"
|
||||
sleep 0.1
|
||||
done
|
||||
}
|
||||
|
||||
stopwatch() {
|
||||
start=$(date +%s)
|
||||
while true; do
|
||||
time="$(( $(date +%s) - $start))"
|
||||
printf '%s\r' "$(date -u -d "@$time" +%H:%M:%S)"
|
||||
if [ $time -ge $max_seconds ]; then
|
||||
echo "Maximum number of seconds ($max_seconds) reached."
|
||||
exit
|
||||
fi
|
||||
sleep 0.1
|
||||
done
|
||||
}
|
||||
|
||||
no_args="true"
|
||||
while getopts "c:sh" arg; do
|
||||
case $arg in
|
||||
c) countdown $OPTARG;;
|
||||
s) stopwatch;;
|
||||
h) echo "$help";;
|
||||
*) echo "$help";;
|
||||
esac
|
||||
no_args="false"
|
||||
done
|
||||
|
||||
if [ "$no_args" = "true" ]; then
|
||||
echo "$help"
|
||||
fi
|
Loading…
x
Reference in New Issue
Block a user