Taskwarrior-命令行TODO Task Manager应用程序
我找到了一个有用的命令行TODO任务管理器应用程序,名为“ Taskwarrior”。
它是一个免费的开源实用程序,可从命令行管理TODO列表。
它是一种高效,灵活,快速且简洁的工具。
我们可以添加各种任务,例如每天,每周,每月的杂务,个人目标,与官员相关的工作,家庭活动,并像在命令行中那样由专业人士进行管理。
当然,有许多基于GUI的任务管理器,Web应用程序可用。
我选择此实用程序的原因是我以前通常在命令行上工作。
它可以帮助我尽快完成工作,并且可以使我在工作和家庭中井井有条。
简而言之,它会尽力而为。
在本教程中,将介绍如何在类似Unix的操作系统中使用Taskwarrior有效地管理任务。
继续阅读。
Taskwarrior-Linux中的命令行TODO Task Manager
安装
大多数现代Linux操作系统的默认存储库中都提供Taskwarrior。
在Arch Linux及其衍生版本(如Antergos,Manjaro Linux)中,运行以下命令进行安装。
$sudo pacman -S task
在基于RPM的系统(例如Fedora)上,如下所示进行安装。
$sudo dnf install task
在SUSE/openSUSE上:
$sudo zypper in task
在Debian,Ubuntu和Linux Mint上:
$sudo apt-get install task
如果它在默认存储库中不可用,则可以使用如下所示的Linuxbrew软件包管理器进行安装。
$brew install task
用法
Taskwarrior的使用并不重要。
我们可以在几天之内学习所有命令。
我将仅介绍最常用的命令。
在开始使用它之前,请运行task命令创建一个~/.taskrc文件。
此文件保留Taskwarrior的所有设置。
$task
输出示例:
A configuration file could not be found in Would you like a sample /home/sk/.taskrc created, so Taskwarrior can proceed? (yes/no) y [task next] No matches.
添加任务
现在让我们用一些任务填充Taskwarrior。
要添加任务,只需运行:
$task add Write a guide about Taskwarrior
输出示例为:
Created task 1.
让我们添加更多任务。
$task add Fix Laptop OS problem
$task add Clean living room
$task add Pay Internet bill
$task add Recharge mobile
同样,我们可以添加要管理的任意多个任务。
查看任务
要查看可用任务的列表,请运行:
$task list
或者,
$task ls
输出示例:
ID Description 3 Clean living room 2 Fix Laptop OS problem 4 Pay Internet bill 5 Recharge mobile 1 Write a guide about Taskwarrior 5 tasks
如我们在上面看到的,我们总共有五个任务。
它为我们提供每个任务的快速概述,包括其ID,优先级和描述。
我们还可以通过运行以下命令来查看每个任务的详细信息:
$task long
输出示例:
ID Created Mod Description 5 2016-04-06 1min Recharge mobile 4 2016-04-06 1min Pay Internet bill 3 2016-04-06 1min Clean living room 2 2016-04-06 1min Fix Laptop OS problem 1 2016-04-06 1min Write a guide about Taskwarrior
上面的命令为我们提供了每个任务的倒数,时间和标签。
要查看特定任务,可以将任务ID与以下命令一起使用:
$task <Task-ID-Number> info
例子:
$task 5 info
输出示例:
Name Value ID 5 Description Recharge mobile Status Pending Entered 2016-04-06 17:45:59 (2min) Last modified 2016-04-06 17:45:59 (2min) Virtual tags PENDING READY UNBLOCKED LATEST UUID 8c4ab173-df08-4b61-b813-f5eb0042b930 Urgency 0
为任务添加优先级
有时候,我们需要首先执行重要任务。
因此,我们可以为此类任务添加优先级。
Taskwarrior优先级参数具有以下三个值。
- H-高优先级
- M-中
- L-低。
我们可以根据任务的重要性为任务添加优先级。
$task add priority:H Buy Groceries
要创建中优先级和低优先级的任务,请分别使用“ M”和“ L”标志。
将标签添加到任务
有时,将标记添加到任务是一种很好的做法,因此我们可以快速找到单个或者组任务。
请参见以下示例。
$task add +household Buy Groceries
要列出包含某些标签的任务,请运行:
$task list +household
输出示例:
ID Age Tags Description Urg 7 43s household Buy Groceries 0.8 1 task
我们还可以将多个标签添加到单个任务中,如下所示。
$task add +tamil +language Learn Tamil Language
为任务添加注释
Taskwarrior还允许我们向任务添加注释。
$task 8 annotate Start learning Tamil alphabets
输出示例:
Annotating task 8 'Learn Tamil Language'. Annotated 1 task.
将任务分组到一个项目中
将任务分为类别或者项目始终是一个好习惯。
它使我们轻松开始一组任务或者完成一组任务。
查看以下示例,以了解如何将任务分组到项目中。
$task add "Buy Groceries" project:personal +household
输出示例:
Created task 10. The project 'personal' has changed. Project 'personal' is 0% complete (1 task remaining).
添加另一个任务。
$task add "Clean living room" project:personal +household
输出示例:
Created task 11. The project 'personal' has changed. Project 'personal' is 0% complete (2 of 2 tasks remaining).
如我们在上面的示例中看到的,我已经在标记为“个人”的单个项目中添加了两个任务,并用“家庭”标记了它们。
现在,我们可以轻松按项目名称过滤任务,如下所示。
$task burndown.daily project:personal
输出示例:
我们还可以按每周细分任务进度,如下所示。
$task burndown.weekly project:personal
这将有助于了解工作表现。
为任务分配截止日期
有些任务需要立即完成,有些可以等待。
Taskwarrior带有内置关键字,例如明天,今天,某天。
要设置某个任务的到期时间,请运行:
$task add Fix Laptop OS problem due:today
以上任务今天需要完成。
同样,我们可以将下周设置为截止日期,如下所示。
$task add Fix Laptop OS problem due:'1week'
从现在起1个月内到期:
$task add Fix Laptop OS problem due:'1month'
在特定日期到期:
$task add Fix Laptop OS problem due:due:2016-04-30
到期日期过后,将使用READY虚拟标记对任务进行标记。
我们可以使用以下命令检查这些任务:
$task ready
要从特定任务中删除截止日期,请运行:
$task 1 modify due:
上面的命令删除任务ID 1的截止日期。
有关截止日期的更多详细信息,请检查此链接。
编辑和修改任务
要编辑任务的属性,请运行:
$task 1 edit
此命令将在默认编辑器中打开指定的任务。
因此,我们可以手动编辑该任务的属性。
我们可以使用任务<ID> Modify命令来修改特定任务的某些属性,而不是编辑任务。
要修改任务,请运行:
$task 2 modify priority:L
上面的命令会将任务2的优先级修改为LOW。
另外,我们可以更改特定任务的截止日期,如下所示。
$task 1 modify due:5d
此命令将任务的截止日期设置为从现在开始1到5天。
开始任务
Taskwarrior查找当前正在处理的任务。
要跟踪当前正在处理的任务,只需将它们标记为活动状态,如下所示。
$task 1 start
$task 2 start
上面的命令将启动任务。
我们可以通过运行“任务列表”命令来查看活动任务的列表。
$task list
输出示例:
如我们在上面的输出中看到的,所有活动任务都突出显示,这使识别它们变得更加容易。
要停止活动任务,只需运行:
$task 1 stop
这将停止任务ID1.
我们可以在完成所有任务后停止它们。
搜索任务
我们可以使用正则表达式搜索特定任务。
例如,以下命令显示包含单词“ Tamil”的任务。
$task '/.* Tamil/' list
输出示例:
ID Age Tags Description Urg 8 56min language tamil Learn Tamil Language [1] 1.7 1 task
完成任务
要将任务标记为已完成,请运行:
$task 1 done
输出示例:
Completed task 1 'Write a guide about Taskwarrior'. Completed 1 task.
现在,我们可以使用以下命令查看列表中剩余的任务:
$task next
删除任务
我不需要特定的内容,该怎么办?
只需删除它即可。
要删除任务,请运行:
$task 10 delete
确认删除指定的任务。
Delete task 10 'Fix Laptop OS problem'? (yes/no) yes Deleting task 10 'Fix Laptop OS problem'. Deleted 1 task.
我需要知道到目前为止我完成了多少任务。
没问题!使用此命令显示时间表。
$task timesheet
输出示例:
2016-04-02 - 2016-04-08 Completed (2 tasks) Project Due Description Write a guide about Taskwarrior Fix Laptop OS problem Started (0 tasks)
重复性任务
有些任务需要每天或者每周完成。
举例来说,此命令将提醒我在周五打扫客厅,然后在星期六进行清洁,而Taskwarrior会提醒我每周进行一次清洁
$task add Clean living room due:'Saturday' wait:'Friday' recur:'1week'
并且,以下命令将提醒我在每个月的月底支付Internet账单。
$task add due:eom recur:monthly Pay Internet bill
到目前为止,正确执行的命令足以使我们开始使用Taskwarrior。
但是,还有更多。
我建议我们参考手册页以获取有关Taskwarior的更多详细信息。
$man task