Linux has many graphical desktop environments. Eventhough Gnome and KDE sports fully fledged and rich graphical user experience, using the command line would be much handier and faster to get certain things done. Indeed, using a command-line is blazingly fast yet powerful. This time, we are going to show you how to manage your day-to-day tasks with this powerful command-line program called TaskWarrior.
Basically, TaskWarrior is a command-line todo list manager. It allows you to add, remove, prioritize and manipulate your tasks more easily. TaskWarrior is a project that empowers task adding more features like color themes, GTD features, LUA plugins, data sync and so forth.
Installing TaskWarrior
The latest stable version of it is 1.9.2. As it’s a more active project it’ll dramatically get updates. Okay, now let’s go ahead and install TaskWarrior.
Ubuntu users, add their repo to your sources list by running the following command in the terminal.
1 | sudo add-apt-repository ppa:ultrafredde/ppa |
Now update your sources and install it by the following commands.
1 2 3 | sudo apt-get update sudo apt-get install task |
Other Linux users can get the source file from here: TaskWarrior Download
Using TaskWarrior
Once the TaskWarrior is installed, just run task from the command-line and it’ll ask whether you want to create a default configuration. Type “y” and enter. You can use it right away or you can edit the configuration file located in your home directory called, .taskrc
Let’s get started with it now.
Adding Tasks
In the terminal just type task add <name of your task>. For instance if you want to read a book. It’ll be like:
1 | task add Read a book |
You can add many tasks as you wish.
Listing the tasks
You can access your added tasks by simply typing
task ls
Or you can simply type task and get a detailed list
Adding Deadlines
If you want to add deadlines the format is like this:
task add <name of the task> due:<date> (Without the brackets)
1 | task add Complete the circuit diagram due:10/11/2010 |
Setting Priorities
The format is: task add priority:H <task name> (Without the brackets)
For instance,
1 | task add priority:H Buy a tux |
Deleting Tasks
First get a your current list by the task ls command and let’s say you want to delete the first entry,
1 | task delete 1 |
Well, I have covered the most basic steps of it. Here’s their official tutorial that will really amaze you on what it’s capable of.
http://taskwarrior.org/wiki/taskwarrior/Simple
It’s might seem harsh at the beginning but believe me, once you master the commands you won’t ever go back to a GUI-based todo list.



