用Linux命令行使用Evernote笔记应用

在Linux命令行中管理你的Evernote记录笔记。要是你从来没有听说过它,Evernote 专门有一个用户友好的在线服务可以在不同的设备间同步笔记。除了提供花哨的基于Web的API,Evernote还发布了在Windows、Mac、Android和iOS上的客户端。然而至今还没有官方的Linux客户端可用。老实说在众多的非官方Linux客户端中,有一个程序一出现就吸引了所有的命令行爱好者,它就是Geeknote

Geeknote 的安装

Geeknote是使用Python开发的。因此,在开始之前请确保你已经安装了Python(最好是2.7的版本)和git。

在 Debian、 Ubuntu 和 Linux Mint 中

    $ sudo apt-get install python2.7 git python-setuptools
    $ git clone git://github.com/VitaliyRodnenko/geeknote.git
    $ cd geeknote
    $ sudo python2.7 setup.py install

在 Fedora 或者 CentOS/RHEL 中

    $ sudo yum install git
    $ git clone git://github.com/VitaliyRodnenko/geeknote.git
    $ cd geeknote
    $ sudo python setup.py install

在 Arch Linux 中

对于ArchLinux用户,只需要使用AUR中的包。

Geeknote 的基本使用

一旦你安装完Geeknote后,你应该将Geeknote与你的Evernote账号关联:

    $ geeknote login

接着输入你的email地址、密码和你的二步验证码。如果你没有后者的话,忽略它并按下回车。

显然你需要一个Evernote账号来完成这些,因此先去注册吧。

完成这些之后,你就可以开始创建新的笔记并编辑它们了。

不过首先,你还需要设置你最喜欢的文本编辑器:

    $ geeknote settings --editor vim

然后,一般创建一条新笔记的语法是:

    $ geeknote create --title [title of the new note] (--content [content] --tags [comma-separated tags] --notebook [comma-separated notebooks])

上面的命令中,只有‘title’是必须的,它会与一条新笔记的标题相关联。其他的标注可以为笔记添加额外的元数据:添加标签来与你的笔记关联、指定放在那个笔记本里。同样,如果你的标题或者内容中有空格,不要忘记将它们放在引号中。

比如:

    $ geeknote create --title "My note" --content "This is a test note" --tags "finance, business, important" --notebook "Family"

然后,你可以编辑你的笔记。语法很相似:

    $ geeknote edit --note [title of the note to edit] (--title [new title] --tags [new tags] --notebook [new notebooks])

注意可选的参数如新的标题、标签和笔记本,用来修改笔记的元数据。你也可以用下面的命令重命名笔记:

    $ geeknote edit --note [old title] --title [new title]

现在基本的创建和编辑已经完成了,更高级的特性是搜索和删除。你可以下面的语法搜索你的笔记:

    $ geeknote find --search [text-to-search] --tags [comma-separated tags] --notebook [comma-separated notebooks] --date [date-or-date-range] --content-search

默认地上面的命令会通过标题搜索笔记。 用"--content-search"选项,就可以按内容搜索。

比如:

    $ geeknote find --search "*restaurant" --notebooks "Family" --date 31.03.2014-31.08.2014

显示指定标题的笔记:

    $ geeknote show [title]

我最喜欢使用的一个技巧是使用:

    $ geeknote show "*"

这会显示所有的笔记并允许你在这中选择一个。

删除一条笔记:

    $ geeknote remove --note [title]

小心这是真正的删除。它会从云存储中删除这条笔记。

最后有很多的选项来管理标签和笔记本。我想最有用的就是显示笔记本列表。

    $ geeknote notebook-list

下面的命令非常相像。你可以猜到,可以用下面的命令列出所有的标签:

    $ geeknote tag-list

创建一个笔记本:

    $ geeknote notebook-create --title [notebook title]

创建一个标签:

    $ geeknote tag-create --title [tag title]

一旦你了解了窍门,很明显这些语法是非常自然明确的。

如果你想要了解更多,不要忘记查看官方文档。

福利

作为福利,Geeknote自带的gnsync工具可以让你在Evernote和本地计算机之间同步。不过,我发现它的语法有点枯燥:

    $ gnsync --path [where to sync] (--mask [what kind of file to sync] --format [in which format] --logpath [where to write the log] --notebook [which notebook to use])

下面是这些参数的意义。

    --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上称为geeknote-improved-git,貌似它有更多的特性和比其他分支更积极的开发。我觉得值得去看看。

时间: 2024-09-20 06:33:31

用Linux命令行使用Evernote笔记应用的相关文章

如何在Linux 命令行下浏览天气预报

  Q: 我经常在 Linux 桌面查看天气预报.然而,是否有一种在终端环境下,不通过桌面小插件或者浏览器查询天气预报的方法? 其中有一个就是wego,一个终端下的小巧程序.使用基于ncurses 的接口,这个命令行程序允许你查看当前的天气情况和之后的预报.它也会通过一个天气预报的API 收集接下来5 天的天气预报. 在Linux 下安装 wego 安装 wego 相当简单.wego 是用 Go 编写的,引起第一个步骤就是安装Go 语言.然后再安装 wego. $ go get github.c

Linux命令行之逗趣的图文

你有没有在Linux命令行中见过一辆火车呢?"猫跟老鼠"呢?编辑Linux命令行其实并不总是件严肃古板的事情.你完全可以用它自娱自乐.下面我们就跟大家一起讨论一下Linux命令行的特质. 假设:本文所有示例都使用Ubuntu Linux.文中描述命令行功能或许在你的Linux系统中是默认的. 有趣的Linux命令行功效 1. Linux"sl"命令行 尽管"sl"代表了"蒸汽机机头",但它是用来提醒那些命令行控们别把"

切换Linux系统下图形界面与Linux命令行模式

  本文为您讲解假如在Linux系统下实现图形界面与Linux命令行模式切换. 一.Linux系统安装的流程中默认语言是英文,而不是中文简体(安装流程中有两次制定语言选项,起决定作用的是第二次) 二.Linux命令行模式切换:切换控制台,由图形转换到控制台模式:ctrl+alt+f1(同时按下3秒钟不要马上松开).由控制台转向图形模式是:alt+f7 三.修改默认的语言项(在控制台下):vi /etc/sysconfig/i18n中的LANG=zh_CN.GB18030(留心大小写,然后重启系统

切换ubuntu下图形模式与linux命令行模式

  本文讲述了linux下图形模式与linux命令行模式切换要领.下面将对此执行 细致说明: ctrl+alt+f2 命令行模式 ctrl+alt+f7 图形模式 我安装的是ubuntu版本,其他版本是不是这样没有研究过. 下面是开机要进入linux命令行哪种模式的设定:(我在我装的ubuntu里看了下没有inittab文件,真奇怪) $gedit /etc/inittab 例如,把id:5:initdefault中的5改为3 ,就是linux进入系统时,原来是直接进入x界面模式的,现在就直接进

如何在Linux命令行中创建以及展示演示稿

如何在Linux命令行中创建以及展示演示稿 你在准备一场演讲的时候,脑海可能会先被图文并茂.形象华丽的演示图稿所占据.诚然,没有人会否认一份生动形象的演讲稿所带来的积极作用.然而,并非所有的演讲都需要TED Talk的质量.更多时候,演讲稿只为传达特定的信息. 而这个,使用文本信息足以完成.在这种情况下,你的时间可以更好的花在信息的搜集和核实上面,而不是在谷歌图片搜索(Google Image)上寻找好看的图片. 在Linux的世界里,有几个不同的方式供你选择来做演讲.比如带有大量多媒体展示.视

Zabbix监控之Linux命令行/Shell脚本解析json

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://dgd2010.blog.51cto.com/1539422/1684266 本文主要写了在Linux下如何用Shell脚本解析json数据,以便于在Zabbix中添加适合于业务应用的监控项. 为什么要使用json? json作为一种文本化的数据格式(文本化协议),符合UNIX编程的哲学,既符合透明性(透明性:设计可见,便于审查和调试)又符合文本性(文本性:数据应该保存为文本文件

你值得了解的 10 个有趣的 Linux 命令行小技巧

我非常喜欢使用命令,因为它们比 GUI(图形用户界面)应用程序对 Linux 系统提供更多的控制,因此,我一直在寻找一些有趣的方法让 Linux 的操作变得简单好玩,主要是基于终端操作. 当我们发现使用 Linux 的新技巧时,尤其是像我这样的命令行极客,我们总会感到非常来劲. 建议阅读: 5 有趣的 Linux 命令行技巧 - 第一部分 而且我们也会很想与数百万 Linux 用户分享新学到的实践或命令,特别是那些还在使用自己的方式操作这个令人兴奋的操作系统的新手们. 建议阅读: 10 个对新手

Linux命令行之逗趣无极限

你有没有在Linux命令行中见过一辆火车呢?"猫跟老鼠"呢?编辑Linux命令行其实并不总是件严肃古板的事情.你完全可以用它自娱自乐.下面我们就跟大家一起讨论一下Linux命令行的特质. 假设:本文所有示例都使用Ubuntu Linux.文中描述命令行功能或许在你的Linux系统中是默认的. 有趣的Linux命令行功效 1. Linux"sl"命令行 尽管"sl"代表了"蒸汽机机头",但它是用来提醒那些命令行控们别把"

Linux 命令行下嗅探 HTTP 流量的工具:httpry

Linux 命令行下嗅探 HTTP 流量的工具:httpry 假设由于某种原因,你需要嗅探HTTP站点的流量(如HTTP请求与响应).举个例子,你可能在测试一个web服务器的实验性功能,或者你在为某个web应用或RESTful服务排错,又或者你正在为PAC(proxy auto config)排错或寻找某个站点下载的恶意软件.不论什么原因,在这些情况下,进行HTTP流量嗅探对于系统管理.开发者.甚至最终用户来说都是很有帮助的. 数据包嗅工具tcpdump被广泛用于实时数据包的导出,但是你需要设置