Como todos mis programitas, está hecho para linux:
#!/bin/bash
# todo - Programa para gestionar tus tareas
# Versión 0.1
# Copyright 2014 Arnoldo Bric
# This program is free software;
DIR=$HOME/.config/to-do
TAREAS=$DIR/tareas.log
NUEVAS=$DIR/nuevas.log
if [ ! -d $DIR ]; then
mkdir -p $DIR
fi
actualizar(){
[ -s $TAREAS ] || mv $NUEVAS $TAREAS
cat -n $TAREAS > $TAREAS.list
[ -a $NUEVAS ] || touch $NUEVAS
cat $NUEVAS > $NUEVAS.list
}
agregar(){
echo "$*">> $NUEVAS
}
eliminar(){
id=$1
sed -e ${id}d $TAREAS > $TAREAS.temp && \
mv $TAREAS.temp $TAREAS
}
continuar(){
temp=$(head -n $1 $TAREAS | tail -n 1)
eliminar $1
agregar $temp
}
mostrar(){
clear
Z="- - - - - - - - - - - "
echo "$Z N U E V A S"
cat $NUEVAS.list
echo "$Z P E N D I E N T E S"
cat $TAREAS.list
echo
}
sintaxis(){
echo " Manejador de lista de tareas"
echo " $0 [m|a tarea|c n|d n|h]"
echo " m : Muestra la lista de tareas en la consola"
echo " a tarea : Agregar tarea \"...\" a la lista"
echo " c n : Mover la tarea \"n\" de PENDIENTES a NUEVAS"
echo " d n : Eliminar la tarea número \"n\""
echo " h : Mostrar la sintaxis y salir"
exit 0
}
[ $# = 0 ] && sintaxis && exit 0
OP=$1
shift
case $OP in
h) sintaxis ;;
a) agregar $*
actualizar
mostrar
;;
c) continuar $1
actualizar
mostrar
;;
d) eliminar $1
actualizar
mostrar
;;
m) actualizar
mostrar
;;
*) exit 1
esac
actualizar
exit 0
Guarda el script anterior como /usr/local/bin/todo y dale permisos de ejecución para todos:
# chmod +x /usr/local/bin/todo
No hay comentarios:
Publicar un comentario