Skip to content

Instantly share code, notes, and snippets.

@yukihirai0505
Last active July 20, 2017 11:11
Show Gist options
  • Save yukihirai0505/7e6de221d19faaf4aa64bd415e79631a to your computer and use it in GitHub Desktop.
Save yukihirai0505/7e6de221d19faaf4aa64bd415e79631a to your computer and use it in GitHub Desktop.
date loop bash from start_date to end_date
#!/bin/bash
## Linux
START_DATE="20160902"
END_DATE="20170303"
for (( DATE=${START_DATE}; ${DATE} < ${END_DATE}; DATE=`date -d "${DATE} 1 day" '+%Y%m%d'`))
do
TARGET_DATE=`date -d ${DATE} '+%Y-%m-%d'`
echo ${TARGET_DATE}
curl ${URL}?date=${TARGET_DATE}
sleep 2
done
## macOS
#!/bin/bash
START_DATE="20160902"
END_DATE="20170303"
for (( DATE=${START_DATE}; ${DATE} < ${END_DATE}; DATE=`date -j -v +1d -f "%Y%m%d" "${DATE}" +%Y%m%d`))
do
NEXT_MONTH=`date -j -v +1d -f "%Y%m%d" "${DATE}" +%Y-%m-%d`
echo $NEXT_MONTH
done
## macOS s3 and recursive grep
s3cmd get --recursive s3://hoge/date=2017-07
START_DATE="20170700"
END_DATE="20170720"
TARGET_PATH="login/confirm"
echo ${TARGET_PATH}'へのアクセス回数'
echo 'date, count'
for (( DATE=${START_DATE}; ${DATE} < ${END_DATE}; DATE=`date -j -v +1d -f "%Y%m%d" "${DATE}" +%Y%m%d`))
do
TARGET_DATE=`date -j -v +1d -f "%Y%m%d" "${DATE}" +%Y-%m-%d`
find date=${TARGET_DATE}/*/*.gz -print0 | xargs -0 zgrep ${TARGET_PATH} | echo ${TARGET_DATE},$(wc -l)
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment