Generate comma separated dates for last seven days:
Considering current date is 2016-04-08, DATE variable value will be as follows:
We can use different date formats on a case to case basis. This thing comes in handy when we have to feed a date range to some reporting tool.
Generate comma separated dates for last month and from today to start of the day:
# Fetch the date 7 days ago
DATE=$(date -d '7 day ago' '+%Y-%m-%d');
# Generate comma-separated string for last 7 days
for i in {6..1}; do DATE=$DATE","$(date -d "$i day ago" '+%Y-%m-%d'); done
DATE=$(date -d '7 day ago' '+%Y-%m-%d');
# Generate comma-separated string for last 7 days
for i in {6..1}; do DATE=$DATE","$(date -d "$i day ago" '+%Y-%m-%d'); done
2016-04-01,2016-04-02,2016-04-03,2016-04-04,2016-04-05,2016-04-06,2016-04-07
We can use different date formats on a case to case basis. This thing comes in handy when we have to feed a date range to some reporting tool.
Generate comma separated dates for last month and from today to start of the day: