taskwarrior,删除旧的定期任务

时间:2014-09-05 09:56:23

标签: taskwarrior

如何删除taskwarrior中的所有重复任务,这些任务已完成,直到某个日期?

我试过了:

task Nevena until:07/29/2014 uuids

列出那些日期之前的那些,并收集他们的id,所以我可以管它们删除命令,但我没有得到预期的结果。

3 个答案:

答案 0 :(得分:5)

我拉了一下头发后找到了答案:

task $(task uuids due.before:now) delete

做了这个伎俩。

这很有效,因为无论日期是什么,未来完成的任务都没有截止日期,所以这个命令保留了我当前的新任务和截止日期。

答案 1 :(得分:1)

我相信答案是删除父任务,然后不再创建重复任务。您可以使用task all +PARENT显示所有父任务。例如:

$ task all +PARENT

ID St UUID     Age  Done Tags R Due        Until Description                                     
21 R  58e83c9b 1.7y           R 2018-04-01       replace upstairs air filter                     
20 R  f8b5b0db 1.7y       [1] R 2018-04-01       replace upstairs air filter

我以某种方式对同一件事有两个重复执行的任务。我可以删除它们:

$ task delete 21 
Delete task 21 'replace upstairs air filter'? (yes/no) yes
Deleting task 21 'replace upstairs air filter'.
Deleted 1 task.
$
$ task delete 20
Delete task 20 'replace upstairs air filter'? (yes/no) yes
Deleting task 20 'replace upstairs air filter'.
Deleted 1 task.

现在,重复执行的任务不再显示。

答案 2 :(得分:0)

命令

task $(task uuids due.before:now +CHILD +COMPLETED) delete

应该完全按照您的意愿行事。

基于@branquito 的回答。