Skip to content
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
110 lines (77 sloc) 3.17 KB

% hledger(1) hledger version % author % monthyear

m4_dnl This man page is composed from multiple files as follows: m4_dnl m4_dnl m4_dnl m4_dnl m4_dnl m4_dnl m4_dnl

web({{ docversionlinks({{hledger}}) }})



hledger - a command-line accounting tool


hledger [-f FILE] ADDONCMD -- [OPTIONS] [ARGS]


hledgerdescription Tested on unix, mac, windows, hledger aims to be a reliable, practical tool for daily use. }})

This is hledger’s command-line interface (there are also terminal and web interfaces). Its basic function is to read a plain text file describing financial transactions (in accounting terms, a general journal) and print useful reports on standard output, or export them as CSV. hledger can also read some other file formats such as CSV files, translating them to journal format. Additionally, hledger lists other hledger-* executables found in the user’s $PATH and can invoke them as subcommands.

hledger reads files If using $LEDGER_FILE, note this must be a real environment variable, not a shell variable. You can specify standard input with -f-.

Transactions are dated movements of money between two (or more) named accounts, and are recorded with journal entries like this:

journal({{ 2015/10/16 bought food expenses:food $10 assets:cash }})

For more about this format, see hledger_journal(5).

Most users use a text editor to edit the journal, usually with an editor mode such as ledger-mode for added convenience. hledger’s interactive add command is another way to record new transactions. hledger never changes existing transactions.

To get started, you can either save some entries like the above in ~/.hledger.journal, or run hledger add and follow the prompts. Then try some commands like hledger print or hledger balance. Run hledger with no arguments for a list of commands.

include( include( include( include( man({{


COLUMNS The screen width used by the register command. Default: the full terminal width.



Reads files


The need to precede addon command options with -- when invoked from hledger is awkward.

When input data contains non-ascii characters, a suitable system locale must be configured (or there will be an unhelpful error). Eg on POSIX, set LANG to something other than C.

In a Microsoft Windows CMD window, non-ascii characters and colours are not supported.

On Windows, non-ascii characters may not display correctly when running a hledger built in CMD in MSYS/CYGWIN, or vice-versa.

In a Cygwin/MSYS/Mintty window, the tab key is not supported in hledger add.

Not all of Ledger's journal file syntax is supported. See file format differences.

On large data files, hledger is slower and uses more memory than Ledger.



You can’t perform that action at this time.