#reporting #command-line-tool #cli

app pfr

个人财务报告命令行工具

4个版本

使用旧Rust 2015

0.2.1 2019年5月19日
0.2.0 2018年4月7日
0.1.1 2018年3月29日
0.1.0 2018年3月29日

金融 类别中排名 #156

MIT 许可证

18KB
314

pfr:个人财务报告器

pfr 是一个命令行工具,用于帮助管理个人财务。

我喜欢按月分配我的钱;在每个月底,我会将足够的钱加载到我的卡上,以覆盖预计的月度支出。

这种方法的一个小问题是,按月考虑我生活中的一些定期交易并不总是最容易的。例如,我想每周分配40美元用于食物,但每月100美元用于汽油。这些费用也可能每周或每月略有变化。此外,一些费用来自不同的账户,因此我还需要跟踪这一点。

因此,我需要坐下来手动计算出进账,并根据账户进行分类,但针对所有支出。这很糟糕。所以我编写了一个程序来做这件事。

访问crates.io上的我

用法

您可以使用 pfr 告诉您的收入和支出,以及它们发生的频率。

# I make $800.00 a month from work
pfr add income monthly work 800 

# I spend $40.00 a week on food, and this comes
# out of my direct-debit account
pfr add expense weekly food 40 --account "direct debit"

# Insurance for my car costs $20.00 a month, and
# is paid from my automatic payments account
pfr add expense weekly "car insurance" 20 --account automatic --category car

# I also spend $60 on petrol per week, but this
# comes from my EFTPOS (direct-debit) card.
pfr add expense weekly petrol 60 --account "direct debit" --category car

您可以使用 pfr list 列出 pfr 知道的交易。

$ pfr list
monthly	income	work                	 800.00
weekly	expense	petrol              	  60.00
weekly	expense	food                	  40.00
monthly	expense	car insurance       	  20.00

最后,您还可以生成报告

$ pfr report
Monthly Report

# This table shows all of your incomes and expenditures,
# extrapolated to 1-month (30 days). Negative values are enclosed in (parentheses).

# This gives you an overview of all the transactions.

INCOME              EXPENDITURE         VALUE       CATEGORY  ACCOUNT 
-----------------------------------------------------------------------
work                                      800.00                      
                    car insurance       (  20.00)   car       automatic
                    petrol              ( 256.80)   car       direct debit
                    food                ( 171.20)             direct debit
-----------------------------------------------------------------------
                    TOTAL:                352.00                      


# This table shows your expenses, broken down by category.

Breakdown:
car              276.80
(other)          171.20


# This table shows the amount of money I need to put in each
# account in order to cover my expenses.

Coverage:
 428.00 -> direct debit
  20.00 -> automatic 
   0.00    (unallocated)

安装

通过 cargo

cargo install pfr
pfr init # initialises the storage files, in ~/.pfr/

保存、加载和备份

(自 v0.2.0 新增)

pfr save <name> 将当前账本的快照保存为 name。您可以使用 pfr load name 重置回该状态。

pfr backup 做同样的事情,但不需要您指定名称。您可以使用 pfr restore 重置回状态。如果您只想查看一些小更改的结果,而不想永久保留它们,这会很有用。

v0.1.1 更新到 v0.2.0

pfr 现在将数据存储在目录 ~/.pfr/ 中。更新工具(通过 cargo install --force)并重新运行 pfr init 后,你应该执行 mv ~/.pfr_data ~/.pfr/.current_data

此外,频率指定符已扩展;例如 wkly -> weekly

数据格式

pfr 将所有交易以 JSON 格式存储在 ~/.pfr/ 中。

依赖关系

~4MB
~75K SLoC