Ledger-复式记账的一个功能强大的命令行工具

无论你是一个电脑极客还是普通用户,记录账户开销总是必不可少的。虽然在Linux上有很多基于GUI的记账工具(比如 - GNUCash)受到大家欢迎,但是工作在命令行的记账工具是很多用户难以想象的。在本文中,我们将讨论一个功能强大的命令行记账工具-Ledger。

 

ledger-main

Ledger - 复式记账工具

Ledger是复式记账的一个功能强大的命令行工具。对于那些不了解“复式(Double-Entry)”的用户,它这意味着每笔交易都必须有一个源。站在一个外行的角度来看,这意味着,每做成一笔账户信贷,一个账户必须有一个借记卡。所以,Ledger跟踪资金运转并且帮助你了解你的开支。

Ledger没有自己的数据库,它依赖于通过用户维护一个开支表(一个简单的文本文件)。不过开支表有一种Ledger能够理解的特殊格式。

例如,下图是我准备的一个简单的开支表:

ledger-1

 

几个值得注意的要点:

  • 分类之下的所有行是tab缩进(例如 - Shopping,Leisure或EMI)。
  • 同样,所有的开支金额也是tab缩进(包括:$)。
  • 作为复式记账工具,制定信用卡和借记卡是很重要的,否则Ledger将会报错。

简短教程

当你准备好了费用表,参照下图来了解怎样检查总体费用。

ledger-2

所以,通过-f 选项你可以看到,你可以指定你的开支表的名称并且balance是Ledger的一个命令,它能够处理明确显示的总付款记录。另外,借记卡支付显示为红色,支出显示为白色。

正如前面所讨论的,Ledger要求用户输入正确的借方贷方详细信息。下面是一个当费用表中提到了错误账户对应关系时的示例:

ledger-3

我只是把鞋子的购物费用从$50改到$60,但是没改变付款价格。正如你看到的,Ledger显示了“Transaction does not balance“错误。

除了balance命令,你可以用register命令去显示所有条目对应的报表查询。

例如:

ledger-4

所以,你可以从上面示例中看到 - register命令是用来shopping报表查询,所有有关这一类的交易都在输出中显示。

这只是冰山一角,Ledger提供很多其他选项值得一试(包括:report generation)。更多内容访问手册页

优点

  • 强大且功能丰富的记账工具
  • 便于使用
  • 彩色输出

缺点

  • 开支文件需要分别维护
  • 有一定的学习曲线

下载/安装

下面是一些有关Ledger命令行工具的重要链接:

Ubuntu用户可以通过Ubuntu软件中心下载和安装这个工具。这篇文章使用的版本是3.0。

总结

Ledger是一个智能小巧的命令行实用程序用来管理你的开支。你可以用它来管理日常以及复杂的业务账户。虽然它有一定的学习曲线,但是它拥有各种功能,在学习使用Ledger中投入一点努力是值得的。

 原文发布时间为:2013-09-23

时间: 2024-11-25 09:33:04

Ledger-复式记账的一个功能强大的命令行工具的相关文章

LFTP : 一个功能强大的命令行FTP程序

LFTP : 一个功能强大的命令行FTP程序 大家好,这篇文章是介绍Lftp以及如何在Linux操作系统下安装的.Lftp是一个基于命令行的文件传输软件(也被称为FTP客户端),由Alexander Lukyanov开发并以GNU GPL协议许可发行.除了FTP协议外,它还支持FTPS,HTTP,HTTPS,HFTP,FISH,以及SFTP等协议.这个程序还支持FXP,允许数据绕过客户端直接在两个FTP服务器之间传输. 它有很多很棒的高级功能,比如递归镜像整个目录树以及断点续传下载.传输任务可以

Inxi:一个功能强大的获取Linux系统信息的命令行工具

Inxi 最初是为控制台和 IRC(网络中继聊天)开发的一个强大且优秀的命令行系统信息脚本.可以使用它获取用户的硬件和系统信息,它也用于调试或者社区技术支持工具. 使用 Inxi 可以很容易的获取所有的硬件信息:硬盘.声卡.显卡.网卡.CPU 和 RAM 等.同时也能够获取大量的操作系统信息,比如硬件驱动.Xorg .桌面环境.内核.GCC 版本,进程,开机时间和内存等信息. 运行在命令行和 IRC 上的 Inxi 输出略有不同,IRC 上会有一些可供用户使用的默认过滤器和颜色选项.支持的 IR

rxvt一个功能强大的终端配置示例

rxvt 是一个http://www.aliyun.com/zixun/aggregation/17547.html">功能强大的的终端,它占用资源少,启动速度快,很多人都喜欢使用它.所以我在这里介绍一下Debian系统中rxvt中文终端的安装.在 Debian中有很多个rxvt包,可用apt-cache search rxvt命令查询.主要有以下三类,一个就叫rxvt,不支持中文显示:一个叫rxvt-ml,支持GB和BIG5中文编码:还有一个叫rxvt- unicode,支持unicod

rtorrent - 强大的命令行BT客户端

rtorrent - 强大的命令行BT客户端 NOTE - 文中展示的所有示例和指令都已经在Ubuntu 13.04中测试过.   一.           安装 [root@GY-10000 data]# yum search rtorrent Loaded plugins: security ========================================= N/S Matched: rtorrent =====================================

phptags tag tidier 1.0发布 一个简单的命令行工具

phptags是一个简单的命令行工具用于自动重写PHP打开和关闭的标签.它可以在短的和长的开放标签之前进行转换,添加漏掉的关闭标签或删除它们,并且可以调整行距或在尾部添加空格.它利用正则表达式或编译器. phptags tag tidier 1.0此版本已还原UTF-8依赖的空格重写.在标记编译器模式,间距现在可以在更多的情况下保存.一个针对PHP5.2兼容性修补程序已被应用. 下载地址: phptags-1.0.deb&http://www.aliyun.com/zixun/aggregati

lolcat :一个在 Linux 终端中输出彩虹特效的命令行工具

那些相信 Linux 命令行是单调无聊且没有任何乐趣的人们,你们错了,这里有一些有关 Linux 的文章,它们展示着 Linux 是如何的有趣和"淘气" . Linux命令及Linux终端的20个趣事 终端中的乐趣:6个有趣的Linux命令行工具 Linux终端的乐趣之把玩字词计数 在本文中,我将讨论一个名为"lolcat"的小工具 – 它可以在终端中生成彩虹般的颜色. 为终端生成彩虹般颜色的输出的 Lolcat 命令 何为 lolcat ? Lolcat 是一个针

Inxi:一个功能强大的获取 Linux 系统信息的命令行工具

Inxi 最初是为控制台和 IRC(网络中继聊天)开发的一个强大且优秀的命令行系统信息脚本.可以使用它获取用户的硬件和系统信息,它也用于调试或者社区技术支持工具. 使用 Inxi 可以很容易的获取所有的硬件信息:硬盘.声卡.显卡.网卡.CPU 和 RAM 等.同时也能够获取大量的操作系统信息,比如硬件驱动.Xorg .桌面环境.内核.GCC 版本,进程,开机时间和内存等信息. 运行在命令行和 IRC 上的 Inxi 输出略有不同,IRC 上会有一些可供用户使用的默认过滤器和颜色选项.支持的 IR

BRL-CAD 7.20.4发布 功能强大的立体建模工具

BRL-CAD是一款http://www.aliyun.com/zixun/aggregation/17547.html">功能强大的立体几何和实体造型系统的建模工具,功能类似AutoCAD.它具有一个交互式几何编辑器,支持光线追踪渲染和几何体分析.图像处理.分布式网络的framebuffer支持.图像和信号处理. BRL-CAD 7.20.4该版本提供了多个主要功能的增强和修复.支持NURBS继续改善与更好的步骤导入,射线追踪修复,更好的线框,以及众多的性能改进,支持alpha状态. 软

在c#中调用另一个应用程序或命令行(.exe 带参数)

在.net中使用system.diaglostics.Process可以用来调用另一个命令行或程序. using System.Diagnostics; 如果是dos Process.Start("cmd.exe"); 如果是其他文件 Process.Start("绝对路径+文件名.exe"); ------------------------------------ 如何在c#中调用外部dos程序? 使用Process对象: System.Diagnostics.