LinuxCommandLibrary

todo.txt-cli

TLDR

Add a new task

$ todo.sh add "[Buy groceries +shopping @errands]"
copy
List all tasks
$ todo.sh list
copy
List tasks matching term
$ todo.sh list "[search term]"
copy
Mark task as done
$ todo.sh do [1]
copy
Set priority on task
$ todo.sh pri [1] [A]
copy
Append text to task
$ todo.sh append [1] "[additional text]"
copy
Archive completed tasks
$ todo.sh archive
copy
Delete a task
$ todo.sh del [1]
copy

SYNOPSIS

todo.sh [options] action [tasknumber] [taskdescription]

DESCRIPTION

todo.txt-cli (todo.sh) is a shell script for managing tasks in a plain text file. It follows the todo.txt format, which uses simple conventions for priorities, projects (+project), contexts (@context), and dates.
Tasks are stored in todo.txt, one per line. Completed tasks are optionally archived to done.txt. The plain text format ensures portability and compatibility with any text editor, sync service, or scripting tool.
The script supports tab completion for priorities, contexts, and projects. Configuration is done through a .todo.cfg file which can customize colors, file locations, and default behaviors.
Install via package manager or Homebrew: `brew install todo-txt`

PARAMETERS

-f

Force actions without confirmation.
-h
Display help.
-p
Plain mode (no colors).
-a
Don't auto-archive done tasks.
-n
Don't preserve line numbers.
-t
Don't prepend date on add.
-v
Verbose mode.
-V
Display version.
-d file
Use alternate config file.

ACTIONS

add text: Add new task.
list term: List tasks matching term.
listall term: List all tasks including completed.
do n: Mark task n as done.
pri n priority: Set priority (A-Z) on task n.
depri n: Remove priority from task n.
append n text: Append text to task n.
prepend n text: Prepend text to task n.
replace n text: Replace task n with new text.
del n: Delete task n.
archive: Move done tasks to done.txt.
report: Add open/done counts to report.txt.
deduplicate: Remove duplicate lines.

CAVEATS

Requires Bash. Task numbers change when tasks are added or deleted. Use archive regularly to maintain consistent numbering. Plain text format means no built-in reminders or dependencies.

HISTORY

todo.txt was created by Gina Trapani as a simple, portable task management system. The format and CLI tool have inspired numerous apps and implementations across platforms. The project emphasizes future-proof, human-readable task storage.

SEE ALSO

task(1), taskwarrior(1), t(1), remind(1)

Copied to clipboard