Referință rapidă

Ghid rapid Ledger CLI

Ghid de referință complet pentru Ledger CLI: contabilitate în partidă dublă în text simplu, indicatori de stare, date auxiliare, aserțiuni de sold și filtre avansate.

· Publicat

Ledger este un instrument puternic în linia de comandă pentru contabilitate în partidă dublă în text simplu. Înregistrând tranzacțiile în fișiere text ușor de citit, Ledger calculează solduri, generează registre și produce rapoarte financiare detaliate.


Concepte de bază și primii pași

Ecuația contabilă în partidă dublă

În Ledger, fiecare tranzacție constă din două sau mai multe înregistrări a căror sumă trebuie să fie strict zero:

$$\text{Assets} + \text{Expenses} = \text{Liabilities} + \text{Equity} + \text{Income}$$

Assets:Checking          -$600.00   ; Asset decreases (credit)
Expenses:Rent             $600.00   ; Expense increases (debit)
---------------------------------
Sold net = $0.00

Prezentare generală a comenzilor de bază

Comandă Formă completă Descriere
ledger bal ledger balance Calculează și afișează soldurile curente ale conturilor
ledger reg ledger register Afișează cronologic înregistrările cu soldul curent
ledger print ledger print Formatează și afișează intrările din jurnal
ledger csv ledger csv Exportă tranzacțiile filtrate în format CSV standard
ledger payees ledger payees Afișează toți beneficiarii unici din jurnal
ledger accounts ledger accounts Afișează toate conturile și ierarhia acestora

Specificațiile sintaxei de jurnal

Structura de bază a unei tranzacții

2024/01/03 * (CODE#001) Landlord John ; tag:rent
    Expenses:Rent:Apartment       $600.00
    Assets:Checking:MainBank
  • Detalierea liniei de antet::
2024/01/03   *       (CODE#001)   Landlord John     ; tag:rent
^            ^       ^            ^                 ^
Date         State   Code/Check#  Payee/Description Comment & Tags
  • Deducere automată: Ledger poate deduce automat valoarea unei înregistrări pentru echilibrarea tranzacției.

Indicatori de stare a tranzacțiilor

Indicator Stare Descriere și utilizare tipică
(None) Neconciliat Tranzacții noi care nu au fost încă verificate cu extrasul de cont
! În așteptare Tranzacții inițiate aflate în curs de decontare
* Conciliat Tranzacții verificate și decontate pe extrasul bancar

Date auxiliare

Semnul egal permite separarea datei tranzacției de data efectivă a decontării:

; Format: EventDate=SettlementDate
2024/01/01=2024/01/15 Consulting Client A
    Assets:AccountsReceivable    $1,000.00
    Income:Consulting

Aserțiuni și alocări de sold

  • Aserțiune de sold (= $VALUE): verifică dacă soldul contului corespunde valorii declarate.
  • Alocare de sold (= $VALUE): calculează diferența necesară pentru a aduce contul la valoarea respectivă.
; 1. Balance Assertion
2024/01/01 * Restaurant
    Expenses:Food:Dinner          $20.00
    Assets:Cash                  -$20.00 = $500.00

; 2. Balance Assignment
2024/01/01 * Opening Balance
    Assets:Cash                 = $500.00
    Equity:OpeningBalances

Account Declarations & Validation

account Expenses:Food
    note Dining and grocery expenses
    alias food
    payee ^(KFC|McDonalds|Starbucks)$
    check commodity == "$"
    assert commodity == "$"
    default

account Assets:Cash
    alias cash

Commodities & Currencies

; 1. Per-unit cost (@ symbol)
2024/05/31 * Farmers Market
    Expenses:Food:Apples         10 APPLE @ $1.50
    Assets:Checking             -$15.00

; 2. Total cost (@@ symbol)
2024/06/01 * Brokerage
    Assets:Investments:AAPL      5 AAPL @@ $950.00
    Assets:Checking             -$950.00

; 3. Explicit currency price history
P 2024/06/01 00:00:00 EUR $1.0850

Directives

; Global default currency
D $1,000.00

; Set default year
Y2024

Including Sub-Journals

include accounts.journal
include 2023.journal
include 2024.journal

account Business
include company_expenses.journal
end

Budgeting

~ Monthly
    Expenses:Rent               $600.00
    Expenses:Food               $400.00
    Expenses:Utilities          $100.00
    Expenses                    $100.00
    Assets

~ Yearly
    Expenses:Insurance        $1,200.00
    Assets
  • ledger bal --budget Expenses
  • ledger bal --unbudgeted Expenses

Expresii de perioadă

Ledger permite filtrarea temporală în limbaj natural prin opțiunea -p sau --period.

Syntax Structure

[INTERVAL] [BEGIN] [END]

Intervale

Interval Semnificație
every day / daily Daily
every week / weekly Weekly
biweekly Every two weeks
every month / monthly Monthly
every quarter / quarterly Quarterly
every year / yearly Yearly
every N days/weeks/months Custom interval

Period Filtering Examples

ledger reg -p "since last month"
ledger reg Expenses -p "every month from 2024 to 2024/12/31" -M
ledger bal -p "from 2024/01/01 until this month"
ledger bal Expenses:Food -p "last quarter"

Expresii de căutare și filtrare

Syntax Țintă Exemplu Descriere
Account Account name ledger bal Assets Substring/regex match
^Account Root account ledger bal ^Expenses Accounts starting with Expenses
@Payee Payee name ledger reg @Starbucks Match payee field
%Tag Tag presence ledger reg %reimburse Match tagged transactions
%Tag=Value Tag value ledger reg %project=alpha Match tag key-value pairs
=Note Memo note ledger reg =taxi Match memo text
#Code Transaction code ledger reg #1042 Match check or order number

Logică booleană

ledger reg Expenses:Food and @Starbucks and not dining
ledger bal Rent or Transportation
ledger bal Expenses and not \( Drinks or Food \)

Opțiuni uzuale de filtrare

Indicator Opțiune Descriere
-b DATE --begin DATE Filter transactions on or after date
-e DATE --end DATE Filter transactions before date
-C --cleared Only cleared transactions (*)
-U --uncleared Only uncleared transactions
--pending --pending Only pending transactions (!)
-R --real Exclude virtual postings
-r --related Show the offsetting balancing postings

Rapoarte și export de date

-s, --subtotal         # Calculate subtotals for grouped postings
-n, --collapse         # Collapse multi-line postings into one line
--flat                 # Render account tree as a flat list
--tail N               # Limit output to last N lines
--invert               # Invert numerical signs (display expenses as positive)
-X CUR, --exchange CUR # Convert foreign holdings to specified currency at latest rate
# Export all entries to CSV
ledger csv > report.csv

# Export this month's dining expenses
ledger csv Expenses:Food -p "this month"

Exemple practice

# Current assets vs liabilities
ledger bal ^Assets ^Liabilities

# Net revenue this month with positive expenses
ledger bal ^Expenses ^Income -p "this month" --invert

# Top 10 largest expenses
ledger reg Expenses -S amount --tail 10

# Monthly average daily expenses
ledger reg Expenses -M -n --average

Referințe

Subiecte conexe