mirror of https://github.com/nirenjan/dotfiles.git
50 lines
1.1 KiB
Bash
Executable File
50 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
# Monthly logging script
|
|
# Call mlog and it will update a log file
|
|
|
|
# Set the default mlog folder
|
|
[[ -z $MLOG_FOLDER ]] && MLOG_FOLDER="$HOME/mlog"
|
|
|
|
# Make sure that the folder exists
|
|
[[ ! -d $MLOG_FOLDER ]] && mkdir -pv $MLOG_FOLDER
|
|
|
|
# Make sure that we have a valid TMPDIR
|
|
[[ -z $TMPDIR ]] && TMPDIR='/tmp'
|
|
|
|
# Make sure that we have a valid EDITOR
|
|
[[ -z $EDITOR ]] && EDITOR=vim
|
|
|
|
MLOG_HDR=''
|
|
MLOG_TS="[$(date)]"
|
|
MLOG_LOG="$MLOG_FOLDER/$(date +%Y-%m)"
|
|
MLOG_FILE="$TMPDIR/mlog-tmp-$$"
|
|
|
|
if [[ -x $HOME/bin/stardate ]]
|
|
then
|
|
[[ -z $MLOG_RANK ]] && MLOG_RANK='Chief Engineer'
|
|
|
|
MLOG_HDR=`echo "$MLOG_RANK's log, Stardate $($HOME/bin/stardate)" | sed 's/.$//'`
|
|
|
|
if [[ -e $MLOG_LOG ]]
|
|
then
|
|
MLOG_LAST=$(grep Stardate $MLOG_LOG | tail -1)
|
|
|
|
if [[ "$MLOG_LAST" == "$MLOG_HDR" ]]
|
|
then
|
|
MLOG_HDR="$MLOG_RANK's log, supplemental"
|
|
fi
|
|
fi
|
|
fi
|
|
|
|
$EDITOR $MLOG_FILE
|
|
|
|
[[ ! -s $MLOG_FILE ]] && rm -f $MLOG_FILE && exit 0
|
|
|
|
|
|
echo "$MLOG_HDR" >> $MLOG_LOG
|
|
echo "$MLOG_TS" >> $MLOG_LOG
|
|
echo >> $MLOG_LOG # Empty line
|
|
cat $MLOG_FILE >> $MLOG_LOG
|
|
echo -e "\n----------------------------------------\n" >> $MLOG_LOG
|
|
|