要使用Linux脚本自动化TODO管理,你可以创建一个简单的bash脚本来处理常见的任务管理操作
todo
的文件夹,用于存放你的TODO文件。mkdir ~/todo
todo.sh
的脚本文件,并使用文本编辑器打开它。例如,使用nano
编辑器:nano todo.sh
todo.sh
文件中:#!/bin/bash
# 设置TODO文件的路径
TODO_FILE="$HOME/todo/todo.txt"
# 如果文件不存在,则创建一个新的TODO文件
if [ ! -f "$TODO_FILE" ]; then
touch "$TODO_FILE"
fi
# 显示帮助信息
function show_help {
echo "Usage: todo.sh [command] [arguments]"
echo
echo "Commands:"
echo " add [task] Add a new task"
echo " list List all tasks"
echo " done [task_id] Mark a task as done"
echo " help Show this help message"
}
# 添加新任务
function add_task {
if [ -z "$1" ]; then
echo "Error: No task provided."
exit 1
fi
echo "$(date +%Y-%m-%d) $1" >> "$TODO_FILE"
echo "Task added successfully."
}
# 列出所有任务
function list_tasks {
if [ ! -s "$TODO_FILE" ]; then
echo "No tasks found."
exit 0
fi
echo "Tasks:"
cat -n "$TODO_FILE"
}
# 标记任务为完成
function mark_done {
if [ -z "$1" ]; then
echo "Error: No task ID provided."
exit 1
fi
sed -i "${1}d" "$TODO_FILE"
echo "Task marked as done."
}
# 检查命令参数
if [ -z "$1" ]; then
show_help
exit 1
fi
case "$1" in
add)
shift
add_task "$*"
;;
list)
list_tasks
;;
done)
shift
mark_done "$1"
;;
help)
show_help
;;
*)
echo "Error: Invalid command."
show_help
exit 1
;;
esac
保存并退出文本编辑器(在nano
中,按Ctrl + X
,然后按Y
,最后按Enter
)。
为脚本添加可执行权限:
chmod +x todo.sh
./todo.sh add Buy milk
./todo.sh list
./todo.sh done 1
(其中1是任务ID)你还可以将此脚本移动到你的PATH
中的某个目录(例如/usr/local/bin
),以便在任何位置都可以直接运行它,而无需指定脚本的完整路径。