پرش به محتوای اصلی
Beancount.io Logo
شروع سریع با Beancount CLI

شروع سریع با Beancount CLI

نصب فرمان bea، ایجاد دفتر کل Beancount محلی، ثبت اولین خرید شما، و بررسی موجودی‌ها.

یک دفتر کل محلی ایجاد کنید و اولین خرید خود را با bea، ابزار خط فرمان Beancount.io ثبت کنید. ثبت محلی نیاز به حساب Beancount.io ندارد.

این راهنما با ۱٬۰۰۰ دلار آمریکا در حساب چک شروع می‌شود. پس از خرید قهوه به مبلغ ۱۲٫۵۰ دلار آمریکا، موجودی ۹۸۷٫۵۰ دلار آمریکا را تأیید خواهید کرد.

۱. نصب فرمان

با Homebrew در macOS یا Linux:

brew install bex-co/tap/bea
bea --version

اگر از Homebrew استفاده نمی‌کنید، uv را نصب کنید و از uv tool install beancount-io استفاده کنید. بسته پایتون به Python نسخه ۳٫۱۲ یا جدیدتر نیاز دارد.

۲. ایجاد دفتر کل خود

یک پوشه جدید انتخاب کنید. این مثال فایل main.bean را داخل ~/my-books ایجاد می‌کند:

bea --no-input init ~/my-books --currency USD --date 2026-08-01 \
  --opening-balance "Assets:Checking 1000"
cd ~/my-books

قالب، حساب‌های معمول چک، پس‌انداز، نقد، کارت اعتباری، درآمد، و هزینه را باز می‌کند. موجودی افتتاحیه با Equity:OpeningBalances موازنه می‌شود.

برای کتاب‌های خود، قدیمی‌ترین تاریخ را که قصد ثبت دارید انتخاب کنید. همه حساب‌های قالب در آن تاریخ باز می‌شوند. موجودی افتتاحیه باید وضعیت حساب را در آن روز توصیف کند. بدهی کارت اعتباری با مبلغ منفی بیان می‌شود.

init هرگز دفتر کل موجود را بازنویسی نمی‌کند. فایل‌های جدید در سیستم‌های POSIX خصوصی هستند: فقط مالک می‌تواند آن‌ها را بخواند و بنویسد. برای اشتراک با گروه کاربر محلی، صریحاً با chmod 640 main.bean مجوزها را تغییر دهید.

برای راه‌اندازی هدایت‌شده، در ترمینال bea init ~/my-books را اجرا کنید. جادوگر از شما ارز، تاریخ شروع تاریخچه، و موجودی حساب چک را می‌پرسد.

۳. ثبت یک خرید

bea add transaction --date 2026-08-02 --narration "Coffee" \
  --posting "Expenses:Dining 12.50" \
  --posting "Assets:Checking"

هزینه از ارز حساب (USD) استفاده می‌کند. Beancount پست دیگر را به‌عنوان -12.50 USD تکمیل می‌کند. می‌توانید --date را برای خریدهای امروز حذف کنید.

هر افزودن قبل از جایگزینی فایل، بر ضد کل دفتر کل بررسی می‌شود. یک حساب ناشناخته یا تراکنش غیرتوازن خطا با راهنمایی تولید می‌کند.

۴. بررسی نتیجه

bea check
bea list transaction --limit 10
bea report balance-sheet

لیست تراکنش‌ها جدیدترین موارد را اول نشان می‌دهد، همراه با مبلغ‌های پست. ترازنامه ۹۸۷٫۵۰ USD را در حساب چک نشان می‌دهد.

برای تأیید مستقیم آن مبلغ:

bea query "SELECT account, sum(position) WHERE account = 'Assets:Checking' GROUP BY account"

جدول‌های پرس‌وجو دقت نتیجه را حفظ می‌کنند. برای خروجی ساخت‌یافته، پرچم سراسری --json را قبل از فرمان قرار دهید:

bea --json list transaction --limit 10

۵. کتاب‌های خود را در وضعیت خوب نگه دارید

پس از ویرایش دستی فایل، bea check را اجرا کنید. برای ترتیب ستون‌ها، bea format main.bean را اجرا کنید. وقتی یک اسکریپت باید در صورت نیاز به قالب‌بندی شکست بخورد، از bea format main.bean --check استفاده کنید.

برای کار از پوشه دیگر، فایل ریشه را صریحاً انتخاب کنید:

bea --file ~/my-books/main.bean check

ریشه با --file، سپس BEA_FILE، سپس main.bean در پوشه کاری انتخاب می‌شود. گزینه‌های سراسری قبل از فرمان قرار می‌گیرند. قالب‌بندی استدلال فایل یا پوشه خاص خود را می‌گیرد.

ادامه با ثبت‌های خود

بررسی به‌روزرسانی با bea upgrade --check. اجرای bea upgrade برای فراخوانی مدیر بسته که نسخه شما را نصب کرده است. از bea --help یا bea add transaction --help برای بررسی گزینه‌های موجود در نسخه نصب‌شده خود استفاده کنید.