diff options
author | Silvio Rhatto <rhatto@riseup.net> | 2024-07-16 19:16:39 -0300 |
---|---|---|
committer | Silvio Rhatto <rhatto@riseup.net> | 2024-07-16 19:16:39 -0300 |
commit | d37ff984209438d7e88361cf33bb2369abaee7b4 (patch) | |
tree | edd2f1e2a966cf417594f1c7dfd01b9222acd486 | |
parent | b75561585c6269196a3ffa8713621bb377f39fa8 (diff) | |
download | scripts-d37ff984209438d7e88361cf33bb2369abaee7b4.tar.gz scripts-d37ff984209438d7e88361cf33bb2369abaee7b4.tar.bz2 |
Feat: add quarter-timestamps
-rwxr-xr-x | quarter-timestamps | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/quarter-timestamps b/quarter-timestamps new file mode 100755 index 0000000..8f1bab5 --- /dev/null +++ b/quarter-timestamps @@ -0,0 +1,50 @@ +#!/usr/bin/env bash +# +# Determine the quarter's timestamps +# + +# Parameters +BASENAME="`basename $0`" +DIRNAME="`dirname $0`" +QUARTER="$1" +YEAR="`echo $QUARTER | cut -d . -f 1`" +QUARTILE="`echo $QUARTER | cut -d . -f 2`" + +# Syntax check +if [ -z "$QUARTILE" ]; then + echo "usage: $BASENAME <quarter>" + echo "quarter format: YYYY.QQ" + echo "example: 2024.Q3" + exit 1 +fi + +# Lookup table +case $QUARTILE in + Q1) + BEGIN="01-01" + END="03-31" + ;; + + Q2) + BEGIN="04-01" + END="06-30" + ;; + + Q3) + BEGIN="07-01" + END="09-30" + ;; + + Q4) + BEGIN="10-01" + END="12-31" + ;; +esac + +# Determine the UNIX timestamp for the beginning and end of the quarter +QUARTER_BEGIN="`date -d "${YEAR}-${BEGIN} 00:00:00 UTC" +%s`" +QUARTER_END="`date -d "${YEAR}-${END} 00:00:00 UTC" +%s`" + +# Output +echo "Quarter begins at UNIX timestamp $QUARTER_BEGIN ($YEAR-$BEGIN)" +echo "Quarter ends et UNIX timestamp $QUARTER_END ($YEAR-$END)" |