hledger/hledger/Hledger/Cli/Commands/Import.txt
Simon Michael 4a7a700d93 ;doc: fix flags marker appearing in manuals
$FLAGS$ didn't work (nor =FLAGS=); _FLAGS it is..

[ci skip]
2020-01-05 07:41:01 -08:00

36 lines
1.5 KiB
Plaintext

import
Read new transactions added to each FILE since last run, and add them to
the main journal file. Or with --dry-run, just print the transactions
that would be added. Or with --catchup, just mark all of the FILEs'
transactions as imported, without actually importing any.
_FLAGS
The input files are specified as arguments - no need to write -f before
each one. So eg to add new transactions from all CSV files to the main
journal, it's just: hledger import *.csv
New transactions are detected in the same way as print --new: by
assuming transactions are always added to the input files in increasing
date order, and by saving .latest.FILE state files.
The --dry-run output is in journal format, so you can filter it, eg to
see only uncategorised transactions:
$ hledger import --dry ... | hledger -f- print unknown --ignore-assertions
Importing balance assignments
Entries added by import will have their posting amounts made explicit
(like hledger print -x). This means that any balance assignments in
imported files must be evaluated; but, imported files don't get to see
the main file's account balances. As a result, importing entries with
balance assignments (eg from an institution that provides only balances
and not posting amounts) will probably generate incorrect posting
amounts. To avoid this problem, use print instead of import:
$ hledger print IMPORTFILE [--new] >> $LEDGER_FILE
(If you think import should leave amounts implicit like print does,
please test it and send a pull request.)