Dotfiles/bin/.bin/todo
Jonathan Hodgson 0d68560bb9 Small changes
2020-01-17 11:31:19 +00:00

60 lines
750 B
Bash
Executable file

#!/usr/bin/env bash
# Simple todo list
FILE="$HOME/.todo"
function is_int() {
return $(test "$@" -eq "$@" > /dev/null 2>&1);
}
function list(){
if [ -f "$FILE" ]; then
awk '{printf("%5d : %s\n", NR,$0)}' "$FILE"
else
echo "$FILE does not exist"
exit 1
fi
}
function add(){
echo "$@" >> "$FILE"
}
function delete(){
while [ -n "$1" ]; do
if is_int "$1"; then
sed -i "${1}d" "$FILE"
fi
shift
done
exit
}
if [ -n "$1" ]; then
while [ -n "$1" ]; do
case "$1" in
"list"|"l")
shift
list "$@"
exit 0
;;
"add"|"a")
shift
add "$@"
exit 0
;;
"delete"|"del"|"d")
shift
delete "$@"
exit 0
;;
*)
echo "Command $1 unknown"
exit 1
esac
done
else
list
fi
exit