# Initialize 'tar' archive
## Define output tar path (note: each day gets *one* tar file (Ex: "20200731..hostname_location.[.gpx.gz].tar"))
- PATHOUT_TAR="$DIR_OUT"/"$(dateShort)".."$SCRIPT_HOSTNAME""_location""$CMD_COMPRESS_SUFFIX""$CMD_ENCRYPT_SUFFIX".tar && vbm "STATUS:Set PATHOUT_TAR to:$PATHOUT_TAR";
+ PATHOUT_TAR="$DIR_OUT"/"$(dateShort)".."$SCRIPT_HOSTNAME""_location""$CMD_COMPRESS_SUFFIX""$CMD_ENCRYPT_SUFFIX".tar && \
+ vbm "STATUS:Set PATHOUT_TAR to:$PATHOUT_TAR";
## Write bkgpslog version to DIR_TMP/VERSION
- echo "$0"" Version:""$SCRIPT_VERSION" >> "$DIR_TMP/VERSION" && vbm "DEBUG:VERSION created.";
+ FILEOUT_VERSION="$(dateTimeShort)..VERSION";
+ PATHOUT_VERSION="$DIR_TMP"/"$FILEOUT_VERSION";
+ echo "$(dateTimeShort):$(basename "$0")"" Version:""$SCRIPT_VERSION" >> "$PATHOUT_VERSION" && vbm "DEBUG:VERSION created:$PATHOUT_VERSION";
## Check if PATHOUT_TAR already exists.
if [[ -f "$PATHOUT_TAR" ]]; then
vbm "STATUS:Output tar already exists:$PATHOUT_TAR";
### Check if preexisting tar is appendable.
- PATHOUT_APPENDTEST="$DIR_TMP"/"$(dateTimeShort)..append_test.txt" && vbm "DEBUG:Set PATHOUT_APPENDTEST to:$PATHOUT_APPENDTEST";
- echo "$(dateTimeShort)" >> "$PATHOUT_APPENDTEST" && vbm "DEBUG:""$PATHOUT_APPENDTEST"" created."
- if ! tar --append --directory="$DIR_TMP" --file="$PATHOUT_TAR" "$(basename "$PATHOUT_APPENDTEST")"; then
+ FILEOUT_APPENDTEST="$(dateTimeShort)..RESUMING_LOGGING_SESSION.txt";
+ PATHOUT_APPENDTEST="$DIR_TMP"/"$FILEOUT_APPENDTEST" && \
+ vbm "DEBUG:Set PATHOUT_APPENDTEST to:$PATHOUT_APPENDTEST";
+ echo "$(dateTimeShort):""$(basename "$0")"" version $SCRIPT_VERSION resuming logging session." >> "$PATHOUT_APPENDTEST" && \
+ vbm "DEBUG:""$PATHOUT_APPENDTEST"" created."
+ if ! tar --append --directory="$DIR_TMP" --file="$PATHOUT_TAR" "$FILEOUT_APPENDTEST"; then
### If not appendable, label tar broken, move tar, proceed.
- mv "$PATHOUT_TAR" "${PATHOUT_TAR%.*}""-broken$(dateTimeShort)".tar && vbm "DEBUG:tar not writable, moving out of the way $PATHOUT_TAR";
+ mv "$PATHOUT_TAR" "${PATHOUT_TAR%.*}""-broken$(dateTimeShort)".tar && \
+ vbm "DEBUG:tar not writable, moving out of the way $PATHOUT_TAR";
fi
else
vbm "STATUS:Output tar does not already exist. Creating:$PATHOUT_TAR"
### If (no preexisting|appendable) tar found, create empty tar archive at PATHOUT_TAR
- try tar --create --directory="$DIR_TMP" --file="$PATHOUT_TAR" --files-from=/dev/null && vbm "DEBUG:Empty tar created at:$PATHOUT_TAR";
+ try tar --create --directory="$DIR_TMP" --file="$PATHOUT_TAR" --files-from=/dev/null && \
+ vbm "DEBUG:Empty tar created at:$PATHOUT_TAR";
fi
## Append VERSION file to PATHOUT_TAR
- try tar --append --directory="$DIR_TMP" --file="$PATHOUT_TAR" "VERSION" && vbm "DEBUG:VERSION added to $PATHOUT_TAR";
+ try tar --append --directory="$DIR_TMP" --file="$PATHOUT_TAR" "$FILEOUT_VERSION" && \
+ vbm "DEBUG:VERSION added to $PATHOUT_TAR";
# Record gps data until script lifespan ends
declare debugCounter; debugCounter="0"; # set debug counter
- timeStart=$(dateTimeShort); # Note start time
while [[ "$SECONDS" -lt "$scriptTTL" ]]; do
+ timeBufferStart="$(dateTimeShort)"; # Note start time
# Determine file paths (time is start of buffer period)
- FILEOUT_BASENAME="$timeStart""--""$bufferTTL_STR""..""$SCRIPT_HOSTNAME""_location" && vbm "STATUS:Set FILEOUT_BASENAME to:$FILEOUT_BASENAME";
+ FILEOUT_BASENAME="$timeBufferStart""--""$bufferTTL_STR""..""$SCRIPT_HOSTNAME""_location" && vbm "STATUS:Set FILEOUT_BASENAME to:$FILEOUT_BASENAME";
## Files saved to DIR_TMP
PATHOUT_NMEA="$DIR_TMP"/"$FILEOUT_BASENAME".nmea"$CMD_COMPRESS_SUFFIX""$CMD_ENCRYPT_SUFFIX" && vbm "STATUS:Set PATHOUT_NMEA to:$PATHOUT_NMEA";
PATHOUT_GPX="$DIR_TMP"/"$FILEOUT_BASENAME".gpx"$CMD_COMPRESS_SUFFIX""$CMD_ENCRYPT_SUFFIX" && vbm "STATUS:Set PATHOUT_GPX to:$PATHOUT_GPX";
# Remove secured chunks from DIR_TMP
try rm "$PATHOUT_NMEA" "$PATHOUT_GPX" "$PATHOUT_KML";
# Reset buffer and filenames
- unset bufferBash FILEOUT_BASENAME PATHOUT_NMEA PATHOUT_GPX PATHOUT_KML PATHOUT_TAR;
+ unset bufferBash FILEOUT_BASENAME PATHOUT_NMEA PATHOUT_GPX PATHOUT_KML PATHOUT_TAR timeBufferStart;
vbm "DEBUG:Completed buffer session $debugCounter ." 1>&2;
((debugCounter++))
done
# Remove DIR_TMP
try rm -r "$DIR_TMP";
+
+ vbm "STATUS:Main function finished."
} # Main function.
#===END Declare local script functions===
#==END Define script parameters==