Linux中國

在 Linux 命令行下進行時間管理

關於如何在命令行下進行 時間管理 getting things done GTD)有很多討論。不知有多少文章在講使用 ls 晦澀的選項、配合 Sed 和 Awk 的一些神奇的正則表達式,以及用 Perl 解析一大堆的文本。但這些都不是問題的重點。

本文章是關於「如何完成」,在我們不需要圖形桌面、網路瀏覽器或網路連接情況下,用命令行操作能實際完成事務的跟蹤。為了達到這一點,我們將介紹四種跟蹤待辦事項的方式:純文件文件、Todo.txt、TaskWarrior 和 Org 模式。

簡單純文本

![純文本](/data/attachment/album/201812/11/213638wwbr4qhhi0tkej2o.png "plaintext")

我喜歡用 Vim,其實你也可以用 Nano。

最直接管理你的待辦事項的方式就是用純文本文件來編輯。只需要打開一個空文件,每一行添加一個任務。當任務完成後,刪除這一行。簡單有效,無論你用它做什麼都沒關係。不過這個方法也有兩個缺點,一但你刪除一行並保存了文件,它就是永遠消失了。如果你想知道本周或者上周都做了哪些事情,就成了問題。使用簡單文本文件很方便卻也容易導致混亂。

Todo.txt: 純文件的升級版

![todo.txt 截屏](/data/attachment/album/201812/11/213639ys6k5btpt5pbz2dd.png "todo.txt screen")

整潔,有條理,易用

這就是我們要說的 Todo.txt 文件格式和應用程序。安裝很簡單,可從 GitHub 下載最新的版本解壓後並執行命令 sudo make install

![安裝 todo.txt](/data/attachment/album/201812/11/213640pfl7e5tqqe8oq85q.png "Installing todo.txt")

也可以從 Git 克隆一個。

Todo.txt 可以很容易的增加新任務,並能顯示任務列表和已完成任務的標記:

命令 說明
todo.sh add "某任務" 增加 「某任務」 到你的待辦列表
todo.sh ls 顯示所有的任務
todo.sh ls due:2018-02-15 顯示2018-02-15之前的所有任務
todo.sh do 3 標記任務3 為已完成任務

這個清單實際上仍然是純文本,你可以用你喜歡的編輯器遵循正確的格式編輯它。

該應用程序同時也內置了一個強大的幫助系統。

![在 todo.txt 中語法高亮](/data/attachment/album/201812/11/213640w87f77wfhx71k64z.png "Syntax highlighting in todo.txt")

你可以使用語法高亮的功能

此外,還有許多附加組件可供選擇,以及編寫自己的附件組件規範。甚至有瀏覽器組件、移動設備應用程序和桌面應用程序支持 Todo.txt 的格式。

![GNOME extensions in todo.txt](/data/attachment/album/201812/11/213642ou939ubmp3p7ijfi.png "GNOME extensions in todo.txt")

GNOME的擴展組件

Todo.txt 最大的缺點是缺少自動或內置的同步機制。大多數(不是全部)的瀏覽器擴展程序和移動應用程序需要用 Dropbox 實現桌面系統和應用程序直接的數據同步。如果你想內置同步機制,我們有……

Taskwarrior: 現在我們用 Python 做事了

Taskwarrior

花哨嗎?

Taskwarrior 是一個與 Todo.txt 有許多相同功能的 Python 工具。但不同的是它的數據保存在資料庫里並具有內置的數據同步功能。它還可以跟蹤即將要做的任務,可以提醒某個任務持續了多久,可以提醒你一些重要的事情應該馬上去做。

看起來不錯

安裝 Taskwarrior 可以通過通過發行版自帶的包管理器,或通過 Python 命令 pip 安裝,或者用源碼編譯。用法也和 Todo.txt 的命令完全一樣:

命令 說明
task add "某任務" 增加 「某任務」 到任務清單
task list 列出所有任務
task list due:today 列出截止今天的任務
task do 3 標記編號是3的任務為完成狀態

Taskwarrior 還有漂亮的文本用戶界面。

![Taskwarrior in Vit](/data/attachment/album/201812/11/213646yrb38uszeo0r9flz.png "Taskwarrior in Vit")

我喜歡 Vit, 它的設計靈感來自 Vim

不同於 Todo.txt,Taskwarrior 可以和本地或遠程伺服器同步信息。如果你希望運行自己的同步伺服器可以使用名為 taskd 的非常基本的伺服器,如果不使用自己的伺服器也有好幾個可用伺服器。

Taskwarriot 還擁有一個蓬勃發展的插件和擴展生態系統,以及移動和桌面系統的應用。

![GNOME in Taskwarrior ](/data/attachment/album/201812/11/213652dlq5alolp4aephug.png "Taskwarrior on GNOME")

在 GNOME 下的 Taskwarrior 看起來還是很漂亮的。

Taskwarrior 有一個唯一的缺點,你是不能直接修改待辦任務的,這和其他的工具不一樣。你只能把任務清單按照格式導出,然後修改導出文件後,重新再導入,這樣相對於編輯器直接編輯任務還是挺麻煩的。

誰能給我們帶來最大的希望呢……

Emacs Org 模式:牛X的任務收割機

![Org-mode](/data/attachment/album/201812/11/213655poh6xdh3e33ooe9v.png "Org-mode")

Emacs 啥都有

Emacs Org 模式 是目前為止最強大、最靈活的開源待辦事項管理器。它支持多文件、使用純文本、高度可定製、自動識別日期、截止日期和任務計劃。相對於我們這裡介紹的其他工具,它的配置也更複雜一些。但是一旦配置好,它可以比其他工具完成更多功能。如果你是熟悉或者是 Bullet Journals 的粉絲,Org 模式可能是在桌面程序里最像Bullet Journals 的了。

Emacs 能運行,Org 模式就能運行,一些移動應用程序可以和它很好交互。但是不幸的是,目前沒有桌面程序或瀏覽器插件支持 Org 模式。儘管如此,Org 模式仍然是跟蹤待辦事項最好的應用程序之一,因為它確實很強大。

選擇適合自己的工具

最後,這些程序目的是幫助你跟蹤待辦事項,並確保不會忘記做某個事情。這些程序的基礎功能都大同小異,那一款適合你取決於多種因素。有的人需要自帶同步功能,有的人需要一個移動客戶端,有的人要必須支持插件。不管你選擇什麼,請記住程序本身不會讓你更有調理,但是可以幫助你。

via: https://opensource.com/article/18/2/getting-to-done-agile-linux-command-line

作者:[Kevin Sonney](https://opensource.com/users/ksonney "Kevin Sonney") 譯者:guevaraya 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國