本周让我们继续学习如何使用它Linux命令行管理和组织信息。在命令行管理你的个人费用后,我建议你在命令行管理你的笔记,特别是当你使用它时Evernote记笔记时。假如你从未听说过,Evernote用户友好的在线服务可以在不同的设备之间同步做笔记。除了提供花哨的基础Web的API,Evernote还发布了在Windows、Mac、Android和iOS上客户端。然而,到目前为止还没有官方的Linux可用于客户端。说实话,在许多非官方场所Linux在客户端,有一个程序一出现就吸引了所有的命令爱好者,那就是Geeknote。
Geeknote 的安装
Geeknote是使用Python所以,请确保你在开始之前已经安装好了Python(最好是2.7的版本)和git。
在 Debian、 Ubuntu 和 Linux Mint 中$sudoapt-getinstallpython2.7gitpython-setuptools$gitclonegit://github.com/VitaliyRodnenko/geeknote.git$cdgeeknote$sudopython2.7setup.pyinstall
在 Fedora 或者 CentOS/RHEL 中$sudoyuminstallgit$gitclonegit://github.com/VitaliyRodnenko/geeknote.git$cdgeeknote$sudopythonsetup.pyinstall
在 Arch Linux 中
对于ArchLinux只需使用用户AUR中的包。
Geeknote 的基本使用
一旦安装完毕Geeknote之后,你应该去Geeknote与你的Evernote账号关联:$geeknotelogin
然后输入你的email地址、密码和你的二步验证码。如果你没有后者的话,忽略它并按下回车。
显然,你需要一个Evernote账号来完成这些,因此先去注册吧。
完成这些后,您可以开始创建新的笔记并编辑它们。
但首先,您还需要设置您最喜欢的文本编辑器:$geeknotesettings--editorvim
然后,一般创建一条新笔记的语法是:$geeknotecreate--title[titleofthenewnote](--content[content]--tags[comma-separatedtags]--notebook[comma-separatednotebooks])
在上述命令中,只有‘title这是必要的,它将与新笔记的标题有关。其他标记可以为笔记添加额外的元数据:添加与笔记相关的标签,并将其指定在笔记本中。同样,如果你的标题或内容中有空间,别忘了把它们放在引号中。
比如:$geeknotecreate--title"Mynote"--content"Thisisatestnote"--tags"finance,business,important"--notebook"Family"
然后,你可以编辑你的笔记。语法非常相似:$geeknoteedit--note[titleofthenotetoedit](--title[newtitle]--tags[newtags]--notebook[newnotebooks])
注意可选参数,如新标题、标签和笔记本,用于修改笔记的元数据。您还可以使用以下命令重命名笔记:$geeknoteedit--note[oldtitle]--title[newtitle]
现在已经完成了基本的创建和编辑,先进的特征是搜索和删除。你可以下面的语法搜索你的笔记:$geeknotefind--search[text-to-search]--tags[comma-separatedtags]--notebook[comma-separatednotebooks]--date[date-or-date-range]--content-search
默认情况下,上述命令将通过标题搜索笔记。 用"--content-search"根据内容搜索选项。
比如:$geeknotefind--search"*restaurant"--notebooks"Family"--date31.03.2014-31.08.2014
显示指定标题的笔记:$geeknoteshow[title]
我最喜欢使用的一个技巧是使用:$geeknoteshow"*"
这将显示所有笔记,并允许您选择其中一个。
删除笔记:$geeknoteremove--note[title]
小心,这是真正的删除。此笔记将从云存储中删除。
最后,管理标签和笔记本有很多选项。我认为最有用的是显示笔记本列表。$geeknotenotebook-list
下面的命令非常相似。您可以猜到,所有标签都可以用下面的命令列出:$geeknotetag-list
创建笔记本:$geeknotenotebook-create--title[notebooktitle]
创建标签:$geeknotetag-create--title[tagtitle]
一旦你知道了诀窍,很明显这些语法是非常自然和清晰的。
想了解更多,别忘了查官方文件。
福利
作为福利,Geeknote自带的gnsync工具可以让你在那里Evernote与本地计算机同步。不过,我发现它的语法有点无聊:$gnsync--path[wheretosync](--mask[whatkindoffiletosync]--format[inwhichformat]--logpath[wheretowritethelog]--notebook[whichnotebooktouse])
以下是这些参数的意义。--path /home/adrien/Documents/notes/: 与Evernote同步笔记的位置。
--mask "*.txt": 只同步纯文本文件。默认gnsync尝试同步所有文件。
--format markdown: 你希望它们是纯文本还是纯文本markdown格式(默认为纯文本)。
--logpath /home/adrien/gnsync.log: 同步日志的位置。为防止错误,gnsync日志信息将写在那里。
--notebook "Family": 同步哪个笔记本中的笔记。如果是空的,程序将创建一个笔记本与您的同步文件夹命令。
总的来说,Geeknote是一种美Evernote命令行客户端。我个人不常用Evernote,但它仍然很漂亮和有用。一方面,命令行使它非常极客,并且很容易与之相处shell脚本结合。此外,在Git上还有Geeknote在ArchLinux AUR上称为geekote-improved-git,貌似它有更多的特性和比其他分支更积极的开发。我觉得值得去看看。
你认为Geeknote怎么样? 有什么你想用的么?或者你更喜欢使用传统的程序?在评论区中让我们知道。