|
25 | 25 |
|
26 | 26 | START_DATE=""
|
27 | 27 | END_DATE=""
|
28 |
| -if [[ -f "${FILES_DIR}/calendars.txt" ]]; then |
29 |
| - echo "TODO: Using calendars.txt"; |
30 |
| - exit 1 |
31 |
| -elif [[ -f "${FILES_DIR}/calendar_dates.txt" ]]; then |
32 |
| - echo "- Using calendar_dates.txt"; |
33 |
| - HEADERS=$(head -n 1 "${FILES_DIR}/calendar_dates.txt") |
| 28 | +FILE_CALENDAR="${FILES_DIR}/calendar.txt"; |
| 29 | +FILE_CALENDAR_DATES="${FILES_DIR}/calendar_dates.txt"; |
| 30 | +if [[ -f "$FILE_CALENDAR" ]]; then |
| 31 | + echo "Using $FILE_CALENDAR..."; |
| 32 | + HEADERS=$(head -n 1 "$FILE_CALENDAR" | tr -d '\r') |
| 33 | + IFS="," read -r -a HEADERS_ARRAY <<< "$HEADERS" |
| 34 | + START_DATE_INDEX=$(getArrayIndex HEADERS_ARRAY "start_date") |
| 35 | + checkResult $?; |
| 36 | + END_DATE_INDEX=$(getArrayIndex HEADERS_ARRAY "end_date") |
| 37 | + checkResult $?; |
| 38 | + CUT_START_DATE_INDEX=$((START_DATE_INDEX+1)) |
| 39 | + CUT_END_DATE_INDEX=$((END_DATE_INDEX+1)) |
| 40 | + mapfile -t START_DATES < <(tail -n +2 "${FILE_CALENDAR}" | tr -d '\r' | cut -d ',' -f $CUT_START_DATE_INDEX) |
| 41 | + mapfile -t END_DATES < <(tail -n +2 "${FILE_CALENDAR}" | tr -d '\r' | cut -d ',' -f $CUT_END_DATE_INDEX) |
| 42 | + readarray -t START_DATES_SORTED < <(printf '%s\n' "${START_DATES[@]}" | sort) |
| 43 | + readarray -t END_DATES_SORTED < <(printf '%s\n' "${END_DATES[@]}" | sort) |
| 44 | + START_DATE=${START_DATES_SORTED[0]} |
| 45 | + echo "- start date: ${START_DATE}" |
| 46 | + END_DATE=${END_DATES_SORTED[-1]} |
| 47 | + echo "- end date: ${END_DATE}" |
| 48 | +elif [[ -f "$FILE_CALENDAR_DATES" ]]; then |
| 49 | + echo "- Using $FILE_CALENDAR_DATES..."; |
| 50 | + HEADERS=$(head -n 1 "$FILE_CALENDAR_DATES" | tr -d '\r') |
34 | 51 | IFS="," read -r -a HEADERS_ARRAY <<< "$HEADERS"
|
35 | 52 | DATE_INDEX=$(getArrayIndex HEADERS_ARRAY "date")
|
36 | 53 | checkResult $?;
|
37 | 54 | CUT_INDEX=$((DATE_INDEX+1))
|
38 |
| - mapfile -t DATES < <(tail -n +2 "${FILES_DIR}/calendar_dates.txt" | cut -d ',' -f $CUT_INDEX) |
| 55 | + mapfile -t DATES < <(tail -n +2 "${FILE_CALENDAR_DATES}" | tr -d '\r' | cut -d ',' -f $CUT_INDEX) |
39 | 56 | readarray -t DATES_SORTED < <(printf '%s\n' "${DATES[@]}" | sort)
|
40 | 57 | START_DATE=${DATES_SORTED[0]}
|
41 |
| - echo "- start date: ${START_DATE}" |
| 58 | + echo "- start date: '${START_DATE}'" |
42 | 59 | END_DATE=${DATES_SORTED[-1]}
|
43 |
| - echo "- end date: ${END_DATE}" |
| 60 | + echo "- end date: '${END_DATE}'" |
44 | 61 | else
|
45 | 62 | echo "ERROR: GTFS files not found in ${FILES_DIR}";
|
46 | 63 | exit 1;
|
47 | 64 | fi
|
48 | 65 |
|
49 | 66 | ARCHIVE_DIR="${SCRIPT_DIR}/archive";
|
50 |
| -echo "- Archive dir: $ARCHIVE_DIR"; |
| 67 | +echo "- archive dir: $ARCHIVE_DIR"; |
| 68 | + |
| 69 | +mkdir -p "$ARCHIVE_DIR"; |
51 | 70 |
|
52 | 71 | YESTERDAY=$(date -d "yesterday" +%Y%m%d); # service can start yesterday and finish today
|
53 |
| -echo "- Yesterday: $YESTERDAY"; |
| 72 | +echo "- yesterday: $YESTERDAY"; |
54 | 73 |
|
55 | 74 | for ZIP_FILE in $(ls -a ${ARCHIVE_DIR}/*.zip) ; do
|
56 | 75 | echo "--------------------"
|
@@ -82,8 +101,6 @@ for ZIP_FILE in $(ls -a ${ARCHIVE_DIR}/*.zip) ; do
|
82 | 101 | echo "--------------------"
|
83 | 102 | done
|
84 | 103 |
|
85 |
| -mkdir -p "$ARCHIVE_DIR"; |
86 |
| - |
87 | 104 | ARCHIVE_FILE="${ARCHIVE_DIR}/${START_DATE}-${END_DATE}.zip";
|
88 | 105 | cp "$GTFS_FILE" "$ARCHIVE_FILE";
|
89 | 106 | checkResult $?;
|
|
0 commit comments