Over the past few years I've written a number of posts about Ledger, a command-line accounting system. In a nutshell, when using Ledger you keep your financial records in a plain text file and then run reports using the
ledger command line program.
Program your Finances: Command-line Accounting
All about my financial journey, from debt-ridden towards debt-free. More importantly, this is a very basic introduction to how to use ledger to keep track of your finances. This has been described as the best introduction to ledger out there.
Program your Finances: Reporting for Fun and Profit
Outlines a reporting system that I used for awhile to run queries against my ledger data that I couldn't with the native ledger program. Also introduces a small tool for generating realistic sample ledger data.
Program your Finances: Vacation Tracking
Describes a system that I hacked together in an afternoon before a recent vacation that let me keep track of vacation finances on the fly without a laptop.
Program your Finances: Automated Transactions
Gives a simple introduction to ledger's automated transactions and virtual accounts, two features that are great by themselves but let you do really interesting things when combined.
A Robust Reporting System for Ledger
If you're looking something that does some of this for you automatically, check out Personal Capital. I use it along side my ledger files to help me track investments across all of my accounts, as well as help plan my retirement.