Skip to content

Instantly share code, notes, and snippets.

Created Jan 7, 2020
What would you like to do?
Doing. Log what you are doing to a text file with a timestamp in a markdown friendly manner
#!/usr/bin/env bash
# path to the 'doing' file, if this doesn't exist one will be created (see below)
# the entry prefix, a tab and hyphen, so markdown parsers can render it
# date now as yyyy-MM-dd HH:mm - e.g. 2019-05-25 21:56
now=`date '+%F %H:%M'`
# A doing file needs to exist, if it doesn't one will be created
# It should start with 'Current:'
# followed by 3 blank lines
# and then 'Archived'
# Current:
# Archived:
if ! test -f $DOING_FILE; then
echo "$DOING_FILE does not exist!, creating" >&2
echo "Current:"> $DOING_FILE
echo "">> $DOING_FILE
echo "">> $DOING_FILE
echo "Archived:">> $DOING_FILE
echo "">> $DOING_FILE
if [ "$task" == "" ]; then
echo "No task provided" >&2
# inserts text at line 3 of the doing file
sed -i '' '3s/^/'"$PREFIX"' '"$now"' | '"$task"'\'$'\n/' "$DOING_FILE"
echo "Added new task"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment