از این مرجع برای جستجوی دستورهای bea و رفتار آنها استفاده کنید. برای اولین دفتر کل خود، شروع سریع خط فرمان را دنبال کنید. برای فایلهای بانکی، از راهنمای واردات استفاده کنید.
دستورها در یک نگاه
| دستور | هدف |
|---|---|
bea init [DIRECTORY] | ایجاد یک دفتر کل با حسابهای رایج |
bea add TYPE | افزودن یک دستور تاریخدار |
bea add transactions --from FILE.json | افزودن یک دسته تراکنش |
bea import SOURCE | پیشنمایش یک خروجی؛ برای نوشتن، --apply را اضافه کنید |
bea list TYPE | فهرستکردن و فیلتر کردن دستورها |
bea check | اعتبارسنجی کامل دفتر کل |
bea format [PATH] | تراز کردن یک فایل یا قالببندی بازگشتی یک دایرکتوری |
bea query [BQL] | اجرای یک کوئری یا باز کردن پوسته تعاملی کوئری |
bea report TYPE | تولید گزارشهای مالی |
bea ask [QUESTION] | استفاده از کمک هوش مصنوعی میزبانیشده اختیاری با یک دفتر کل محلی |
bea cloud … | ورود و مدیریت دفترهای کل میزبانیشده |
bea upgrade [--check] | ارتقا با مدیر بسته مربوطه، یا بررسی وجود بهروزرسانی |
گزینههای سراسری و مسیرها
گزینههای سراسری قبل از دستور قرار میگیرند:
bea --file ~/my-books/main.bean check
bea --json list transaction --limit 100| گزینه | رفتار |
|---|---|
--file / -f PATH | انتخاب دفتر کل ریشه؛ BEA_FILE و ./main.bean را نادیده میگیرد |
--json | خروجی ساختاریافته؛ همچنین اعلانهای خط فرمان را غیرفعال میکند |
--no-input | غیرفعالکردن اعلانها؛ ورودی الزامی از دست رفته با کد 2 خارج میشود |
--yes / -y | تأیید عملیاتهایی مانند حذف ابری؛ به هوش مصنوعی اجازه نوشتن نمیدهد |
--debug | شامل ردیابی استثناها |
--version | نمایش نسخه نصبشده بدون درخواست شبکه |
--help / -h | نمایش راهنما؛ همچنین در زیردستورها در دسترس است |
--show-completion | چاپ تکمیل پوسته |
--install-completion | نصب تکمیل پوسته |
--shell NAME | انتخاب bash، zsh، fish، powershell یا pwsh به جای تشخیص خودکار پوسته |
init هدف دایرکتوری/فایل خود را ایجاد میکند و BEA_FILE را نادیده میگیرد. به جای آرگومان دایرکتوری، گزینه سراسری --file را میپذیرد. format از هدف موقعیتی خود استفاده میکند که به طور پیشفرض دایرکتوری کاری است. --file سراسری هدف قالببندی را انتخاب نمیکند.
ایجاد یک دفتر کل
bea init [DIRECTORY] به طور پیشفرض دایرکتوری فعلی است. یک دایرکتوری main.bean ایجاد میکند؛ یک مسیر .bean یا .beancount مستقیماً فایل جدید را نامگذاری میکند.
| گزینه | رفتار |
|---|---|
--currency / -c SYMBOL | ارز عملیاتی؛ در حالت غیرتعاملی الزامی است، در حالت تعاملی پیشفرض USD |
--date YYYY-MM-DD | اولین تاریخ سابقه/افتتاح؛ در غیر این صورت یک اعلان یا امروز |
--opening-balance "ACCOUNT NUMBER" | برای حسابهای دارایی/بدهی قالب، تکرار کنید؛ مبالغ از ارز عملیاتی استفاده میکنند |
قالب حسابهای Assets:Checking, Assets:Savings, Assets:Cash, Liabilities:CreditCard, Income:Salary, Income:Interest, Expenses:Groceries, Expenses:Dining, Expenses:Rent, Expenses:Transport, Expenses:Utilities, Expenses:Fees, و Equity:OpeningBalances را باز میکند.
ماندههای افتتاحیه در مقابل Equity:OpeningBalances جبران میشوند. بدهی منفی است. ورودی ارز به حروف بزرگ تبدیل میشود. نمادهای سفارشی مجاز هستند؛ یک نماد که سه حرف بزرگ لاتین نیست، هشدار اشتباه تایپی ایجاد میکند. این یک بررسی در فهرست ارزهای ISO نیست.
فایلهای موجود هرگز بازنویسی نمیشوند. فایلهای جدید از مجوزهای فقط-مالک استفاده میکنند، حالت 0600 در POSIX. نوشتنهای بعدی افزودن، واردات و قالببندی مجوزها را حفظ کرده و به مقاصد فقط-خواندنی احترام میگذارند.
افزودن تراکنشها
bea add transaction -n "Groceries" --payee "Corner Market" \
-p "Expenses:Groceries 30" -p "Assets:Checking" \
--flag '!' --tag household --link receipt-42 --meta 'receipt:IMG_42.jpg'| گزینه | رفتار |
|---|---|
--posting / -p POSTING | الزامی؛ برای هر پستینگ تکرار کنید |
--date YYYY-MM-DD | پیشفرض امروز |
--flag CHARACTER | پیشفرض *؛ برای علامتگذاری تراکنش برای بررسی از ! استفاده کنید |
--payee TEXT | طرف مقابل اختیاری |
--narration / -n TEXT | هدف اختیاری؛ متن حذفشده به عنوان (no narration) فهرست میشود |
--tag TAG, --link LINK | قابل تکرار؛ # یا ^ اولیه اختیاری پذیرفته میشود |
--meta KEY:VALUE | فراداده تراکنش قابل تکرار |
--into FILE | نوشتن یک فایل شاملشده در حین اعتبارسنجی ریشه |
--allow-errors | اجازه صریح خطاهای اعتبارسنجی معنایی؛ نحو باید همچنان تجزیه شود |
یک پستینگ میتواند مبلغ خود را حذف کند. پستینگهای شمارهدار ممکن است ارز را حذف کنند وقتی یک حساب یک ارز مجاز داشته باشد یا دفتر کل یک ارز عملیاتی سازگار داشته باشد. در غیر این صورت، نماد را ارائه دهید.
نحو بومی پستینگ از عملیات حسابی مانند 84/2 EUR، هزینهها مانند {100 USD}، هزینههای کل {{1000 USD}} و قیمتهای @ یا @@ پشتیبانی میکند. از مبالغ اعشاری مانند 1000 استفاده کنید، نه نماد توان مانند 1e3.
تبدیل ارز به نرخ واقعی تراکنش نیاز دارد. به عنوان مثال، 100 EUR @ 1.08 USD را به یک حساب بازشده به یورو و -108 USD را به حساب جاری ارسال کنید. یک خرید سرمایهگذاری میتواند 2 AAPL {100 USD} را به یک حساب بازشده به AAPL و -200 USD را به حساب جاری ارسال کند. زمانی که گزارشها به ارزشگذاری بازار نیاز دارند، نقلقولهای price تاریخدار اضافه کنید.
فراداده رشتههای ساده مانند --meta 'receipt:IMG_42.jpg' را میپذیرد. اعداد، بولیها، تاریخها و مبالغ بومی انواع خود را حفظ میکنند. نمونهها شامل --meta 'reviewed:TRUE'، --meta 'received:2026-08-03' و --meta 'fee:2.50 USD' هستند. نقلقولهای داخلی یک رشته را تحمیل میکنند: --meta 'code:"1234"'. کلیدها باید متمایز باشند؛ filename و lineno رزرو شدهاند.
افزودنهای تکی، افزودنهای حجیم و واردات، خطوط شکسته در پرداختکنندهها، روایتها و فراداده رشتهای را با فاصله جایگزین میکنند. نقلقولها و بکاسلشها محتوای خود را حفظ میکنند.
افزودن سایر دستورها
همه این دستورها به --date YYYY-MM-DD نیاز دارند. آنها همچنین --into FILE و --allow-errors را میپذیرند.
| نوع | فیلدهای الزامی | گزینههای اضافی |
|---|---|---|
open | --account / -a | برای محدودکردن ارزها، --currency / -c را تکرار کنید |
close | --account / -a | — |
balance | --account / -a, --amount "NUMBER CURRENCY" | --pad-from ACCOUNT, --pad-date YYYY-MM-DD |
pad | --account / -a, --source / -s | — |
note | --account / -a, --comment / --message / -m | — |
event | --type / -t, --description / -d | — |
price | --currency / --commodity / -c, --amount "NUMBER CURRENCY" | ارز کالایی را که قیمتگذاری میشود نامگذاری میکند |
commodity | --currency / --commodity / -c | — |
document | --account / -a, --filename / --path | --tag و --link تکراری |
custom | --type / -t | --value / -v KIND:VALUE تکراری |
نامهای حساب دارای یک ریشه با حرف بزرگ و بخشهای جدا شده با دونقطه هستند. هر زیرحساب با یک حرف بزرگ یا رقم شروع میشود. Beancount از حروف یونیکد و نامهای ریشه پیکربندیشده پشتیبانی میکند.
یک مانده، حساب را در ابتدای تاریخ خود بررسی میکند. نحو تلورانس پشتیبانی میشود، مانند --amount "1538 ~ 1 EUR". تلورانس باید غیرمنفی باشد.
از add balance --pad-from Equity:OpeningBalances برای نوشتن یک پد و اظهارنظر مانده آن با هم استفاده کنید. پد به طور پیشفرض روز قبل است؛ --pad-date میتواند روز قبلی دیگری را انتخاب کند. هر دو حساب باید فعال باشند. یک پد مستقل برای مصرف آن به یک مانده بعدی نیاز دارد. --allow-errors میتواند آن حالت میانی را مرحلهبندی کند اما نمیتواند یک حساب پد نامعتبر را دور بزند.
add price یک تکرار دقیق تاریخ/کالا/قیمت در سراسر ریشه و includes آن را رد میکند. با کد 0 خارج میشود و مکان موجود را شناسایی میکند. تاریخها یا قیمتهای مختلف افزودههای جدید هستند.
مسیرهای اسناد در کنار فایل حاوی دستور حل میشوند. با --into years/2026.bean، --filename receipt.pdf به معنای years/receipt.pdf است، نه یک فایل در کنار دایرکتوری کاری پوسته شما.
انواع مقدار سفارشی عبارتند از text، number، amount، account، bool و date. به عنوان مثال، یک بودجه میتواند از --value "text:travel" --value "amount:500 USD" استفاده کند.
ورودی JSON حجیم
bea add transactions --from transactions.json یک آرایه JSON را میپذیرد:
[
{
"date": "2026-08-04",
"narration": "Groceries",
"postings": [
{ "account": "Expenses:Groceries", "amount": "45.00 USD" },
{ "account": "Assets:Checking" }
],
"meta": { "receipt": "R-43", "reviewed": true }
}
]هر تراکنش به date و postings نیاز دارد. فیلدهای اختیاری عبارتند از flag, payee, narration, tags, links, و meta.
یک پستینگ از amount یا units استفاده میکند، مانند {"number":"45.00","currency":"USD"}. برای پستینگ متعادلکننده، هر دو را حذف کنید. فیلدهای پستینگ همچنین شامل cost, price, flag, و meta هستند. هزینهها شامل number و currency با date و label اختیاری هستند. قیمتها شامل number و currency هستند.
برای اعشار از رشتهها استفاده کنید. فراداده از رشتهها و بولیهای معمولی استفاده میکند، یا مقادیر برچسبگذاریشده مانند {"kind":"number","value":"1.125"}, {"kind":"date","value":"2026-08-04"}, و {"kind":"amount","number":"2.50","currency":"USD"}. مکان اختیاری source تراکنش هرگز به عنوان فراداده نوشته نمیشود.
پیشفرض یک دسته اتمی است: هر ردیف ردشده دفتر کل را بدون تغییر میگذارد و با کد 1 خارج میشود. --partial یک زیرمجموعه معتبر مینویسد و اگر ردیفهایی رد شوند، همچنان با کد 1 خارج میشود. خطاهای JSON نتیجه را در error.result توصیف میکنند؛ شاخصهای ردیف در آنجا مبتنی بر صفر هستند. شمارههای ردیف انسانی مبتنی بر یک هستند.
افزودن حجیم --into و --allow-errors را میپذیرد. تکرارزدایی نمیکند. برای بررسی خروجی بانک از bea import استفاده کنید.
دفترهای کل تقسیمشده و ایمنی نوشتن
--file را به سمت ریشه نگه دارید. --into را برای انتخاب یک فایل شاملشده موجود اضافه کنید:
bea --file ~/my-books/main.bean add transaction --into 2026.bean \
--date 2026-08-02 -n "Groceries" \
-p "Expenses:Groceries 30" -p "Assets:Checking"مقصد نسبت به دایرکتوری ریشه است. باید از قبل شامل شده باشد؛ نامگذاری یک فایل نامرتبط رد میشود. دستورهای افزودن، واردات و نوشتنهای تعاملی هوش مصنوعی از این جداسازی پشتیبانی میکنند.
نوشتنها کل دفتر کل کاندید، از جمله پلاگینها و ذخیرهسازی هزینه-لوت را اعتبارسنجی میکنند. تغییر همزمان در ریشه یا گراف include آن با کد 4 خارج میشود. یک مقصد فقط-خواندنی با کد 3 خارج میشود. افزودنهای موفق از همان ترازبندی bea format استفاده میکنند، که ممکن است ستونهای موجود در آن مقصد را دوباره تراز کند.
فهرستکردن دستورها
bea list TYPE از یازده نوع پشتیبانی میکند: transaction، open، close، balance، pad، note، event، price، commodity، document، و custom.
| گزینه | اعمال به | رفتار |
|---|---|---|
--limit / -l N | همه انواع | محدودیت مثبت؛ پیشفرض 50 |
--from-date, --to-date | همه انواع | مرزهای شامل YYYY-MM-DD |
--allow-errors | همه انواع | اجازه داده جزئی با وجود خطاهای بارگذار |
--account / -a TEXT | تراکنش، باز کردن، بستن، مانده، پد، یادداشت، سند | زیررشته حساب غیرحساس به بزرگی/کوچکی حروف |
--currency / -c SYMBOL | قیمت، کالا | نماد دقیق غیرحساس به بزرگی/کوچکی حروف؛ قیمت کالای پایه خود را فیلتر میکند |
--sort newest/oldest | تراکنش | پیشفرض جدیدترین؛ قبل از محدودیت اعمال میشود |
--flag CHARACTER | تراکنش | فیلتر ورودیهایی مانند ! قبل از محدودیت |
--details | تراکنش | رندر نحو Beancount، هر پستینگ، فراداده و مکانهای منبع |
انواع دیگر دستورها ترتیب زمانی را حفظ میکنند. جدول تراکنش فیلترشده با حساب، ستون مبلغ خود را MATCHING POSTING AMOUNTS برچسبگذاری میکند. جزئیات و JSON همچنان شامل همه پستینگهای هر تراکنش انتخابشده هستند. جزئیات ورودیهای بارگذاریشده، از جمله مبالغ استنتاجشده را رندر میکنند؛ آنها گزیدههای خام منبع نیستند.
بررسی، قالببندی و کوئری
bea check ریشه و includes را اعتبارسنجی میکند. برای خطاهای دفتر کل با کد 1 خارج میشود و گزینه --allow-errors ندارد. کوئریها، فهرستها و گزارشها نیز خطاهای بارگذار را رد میکنند مگر اینکه به صراحت گزینه --allow-errors خود را منتقل کنید.
قالببندی یک فایل .bean/.beancount یا یک دایرکتوری را میگیرد. یک دایرکتوری به صورت بازگشتی جستجو میشود.
| حالت قالببندی | مینویسد؟ | رفتار خروج |
|---|---|---|
bea format PATH | بله | 0 پس از موفقیت |
bea format PATH --dry-run | خیر | 0 حتی وقتی فایلها تغییر میکردند |
bea format PATH --check | خیر | 1 وقتی قالببندی لازم است؛ 0 وقتی تمیز است |
هر حالت خطاهای نحوی را بر اساس فایل و خط گزارش میکند، آن فایلها را رد میکند و با کد 1 خارج میشود. یک اجرای معمولی بازگشتی همچنان میتواند فایلهای معتبر را قالببندی کند. JSON در شکست، scanned, formatted, skipped, dry_run, و check را در error.result گزارش میکند.
bea query "BQL" یک کوئری Beancount را اجرا میکند. حذف BQL یک پوسته تعاملی باز میکند؛ exit یا quit آن را میبندد. یک آرگومان کوئری در حالت غیرتعاملی الزامی است. جدول پیشفرض BQL یک ردیف به ازای هر پستینگ دارد. جدولهای کوئری دقت را حفظ میکنند. نتایج خالی (no rows) را در stderr چاپ میکنند؛ JSON یک data.rows خالی و فراداده ستون در data.columns برمیگرداند.
گزارشهای مالی
| گزارش | خروجی |
|---|---|
bea report overview | داراییها، بدهیها، درآمد، هزینهها، ارزش خالص و سری بازهای |
bea report income-statement | درختهای درآمد/هزینه، سود خالص و ردیفهای دوره |
bea report balance-sheet | درختهای دارایی/بدهی/سرمایه و تطبیق مشتقشده |
bea report trial-balance | ماندههای حساب |
همه گزارشها --conversion / -x, --time / -t, --account / -a, و --allow-errors را میپذیرند. همه به جز تراز آزمایشی نیز --interval / -i را میپذیرند: monthly به طور پیشفرض، یا quarterly, yearly, weekly, یا daily.
فیلترهای زمانی شامل یک سال، ماه، تاریخ، سهماهه، هفته یا بازه هستند، مانند 2026, 2026-08, 2026-08-31, 2026-Q3, 2026-W32, یا "2026-01 - 2026-08". دورههای نسبی شامل year, quarter, month, week, day و آفستهایی مانند month-1 هستند. فیلترهای حساب هر پستینگ یک تراکنش مطابق را حفظ میکنند.
تبدیل به طور پیشفرض تنها ارز عملیاتی دفتر کل است. در غیر این صورت، به units پیشفرض میرود و کالاها را جدا نگه میدارد. at_cost از هزینههای تحصیل استفاده میکند. at_value از ارزشهای بازار با بازگشت به هزینه استفاده میکند.
یک تبدیل ارز صریح به قیمتهایی در هر تاریخ ارزشگذاری، از جمله تاریخهای بازه، نیاز دارد. یک خطای قیمت-مفقود شکاف واقعی را نامگذاری میکند، مانند No EUR → USD price on or before 2026-01-31. یک نقلقول بعدی نمیتواند شکاف قبلی را پر کند. یک قیمت مناسب تاریخی اضافه کنید، از --conversion units استفاده کنید یا --allow-errors را برای بررسی مقادیر جزئی انتخاب کنید.
گزارشهای جزئی ارزهای منبع را حفظ میکنند و مجموعهای ترکیبی را ناموجود علامتگذاری میکنند. JSON شامل valuation: "partial", missing_prices, و missing_price_dates است. مجموع سود خالص/ارزش خالص آسیبدیده در ارز درخواستی null هستند.
درآمد، بدهیها و سرمایه معمولاً از علائم منفی Beancount استفاده میکنند. سود خالص -(income + expenses) است که برای سود مثبت است. همین قرارداد در ردیفهای دوره صورت سود و زیان اعمال میشود. تطبیق ترازنامه برای گزارش مشتق میشود؛ هیچ دستوری نمینویسد. equity_reconciled مشخص میکند که آیا تطبیق کامل در دسترس است.
JSON گزارش همچنین دوره، تاریخ پایان انحصاری، تاریخ بهروزرسانی، تبدیل، فیلتر حساب و وضعیت اعتبارسنجی دفتر کل را شناسایی میکند. قبل از مقایسه مجموعها، آن فیلدها را بررسی کنید.
کمک هوش مصنوعی اختیاری
bea ask به هر دو بسته اضافی ask و اعتبارنامههای Beancount.io از bea cloud login یا BEA_TOKEN نیاز دارد. نصب پیشفرض Homebrew وابستگیهای هوش مصنوعی را حذف میکند. کاربران Homebrew میتوانند اجرا کنند:
bea cloud login
uvx --from 'beancount-io[ask]' bea ask "What did I spend last month?" --printبرای نصب uv، beancount-io[ask] را نصب کنید و مستقیماً bea ask را اجرا کنید. --print / -p یکبار پاسخ میدهد و خارج میشود. در غیر این صورت، یک جلسه ترمینال تعاملی است و یک سؤال اختیاری ورودی آن را از قبل پر میکند. استفاده غیرتعاملی به یک سؤال نیاز دارد. حالت JSON پشتیبانی نمیشود.
کوئریها به صورت محلی اجرا میشوند. سؤالات، زمینه مهارت و نتایج ابزار به سرویس هوش مصنوعی میزبانیشده Beancount.io ارسال میشوند. نوشتنهای تعاملی پیشنمایش، تأیید، اعتبارسنجی و به صورت اتمی نوشته میشوند. آنها --into را میپذیرند. --yes سراسری به هوش مصنوعی اجازه نوشتن نمیدهد. حالت پاسخ-تک نوشتنهای پیشنهادی را اعمال نمیکند.
Ask NAME/SKILL.md را از .agents/skills/ در دایرکتوری کاری و از skills/ در دایرکتوری پیکربندی کاربر میخواند. تعریفهای پروژه بر اساس نام برنده میشوند. هر فایل به فیلدهای YAML name و description نیاز دارد. دستورالعملهای کامل در صورت نیاز بارگذاری میشوند.
دفترهای کل میزبانیشده
| دستور | گزینهها و رفتار |
|---|---|
bea cloud login | ورود تعاملی مرورگر/دستگاه |
bea cloud logout | تلاش برای خروج از راه دور و پاککردن اعتبارنامههای ذخیرهشده |
bea cloud status | حساب، منبع اعتبارنامه و انقضا |
bea cloud ledger list | --page پیشفرض 1؛ --limit پیشفرض 50، حداکثر API 100 |
bea cloud ledger show OWNER/NAME | بازرسی یک دفتر کل میزبانیشده |
bea cloud ledger create NAME | --description / -d, --private / --public؛ پیشفرض خصوصی |
bea cloud ledger clone OWNER/NAME | کلون SSH؛ --dir PATH اختیاری |
bea cloud ledger delete OWNER/NAME | حذف دائمی؛ تأیید یا --yes سراسری الزامی است |
ایجاد همچنین --clone و --dir را میپذیرد. برای کلونکردن به دسترسی Git و SSH نیاز است. اگر کلون پس از ایجاد شکست بخورد، دفتر کل میزبانیشده همچنان وجود دارد. دستورهای محلی دفتر کل شما را به طور خودکار آپلود نمیکنند. هیچ گزینه سراسری --ledger وجود ندارد.
JSON و کدهای خروج
--json سراسری نتایج موفق را در stdout قرار میدهد:
{
"bea": "0.1.0",
"target": { "file": "/home/alice/my-books/main.bean" },
"data": [],
"truncated": false,
"limit": 50
}bea نسخه نصبشده است؛ data به دستور بستگی دارد. اهداف یک فایل، دایرکتوری، سرور یا بدون هدف را شناسایی میکنند. نوشتنهای شامل نیز into را شناسایی میکنند. مبالغ اعشاری و تاریخها از رشتهها استفاده میکنند. فهرستهای محدود شامل limit و truncated هستند.
شکستها {"error":{"category":"validation","message":"…","exit_code":1}} را در stderr مینویسند. خطا همچنین میتواند شامل details, result, یک request_id بکاند و یک traceback با --debug باشد.
| کد | دسته | معنی |
|---|---|---|
| 0 | — | موفقیت، شامل پیشنمایشها و رد شدنهای عمدی تکراری |
| 1 | validation | خطای دفتر کل/طرح، شکست بررسی قالببندی یا سایر شکستهای زمان اجرا |
| 2 | usage | آرگومانهای نامعتبر، هدف/ورودی از دست رفته یا وابستگیهای اختیاری از دست رفته |
| 3 | auth | شکست احراز هویت یا مجوز |
| 4 | conflict | ویرایش همزمان، بررسی واردات لازم، هدف init موجود یا نتیجه نامشخص نوشتن راه دور |
قبل از تلاش مجدد برای یک جهش، error.result را بررسی کنید. یک دسته جزئی میتواند ردیفهای پذیرفتهشده را بنویسد، قالببندی بازگشتی میتواند فایلهای معتبر را تغییر دهد و ایجاد-و-کلون میتواند قبل از خروج با کد غیرصفر، یک دفتر کل میزبانیشده ایجاد کند.
اعلانهای خط فرمان توسط --no-input, حالت JSON, stdin غیرترمینال یا CI درست غیرفعال میشوند. حذف ابری همچنان به --yes صریح نیاز دارد. واردات زمانی که تطابقها نیاز به بررسی دارند، به یک تصمیم تکراری صریح نیاز دارند.
استثناهای خروج: Ask JSON را رد میکند؛ ورود ابری به تعامل نیاز دارد؛ خروج موفق ابری و کلون هیچ شیء موفقیت JSON برنمیگردانند. راهنما، نسخه و تکمیل خروجی متنی را حفظ میکنند. upgrade میتواند خروجی مدیر بسته خود را به stderr جریان دهد، از جمله در حالت JSON.
تنظیمات، بهروزرسانیها و حالت ذخیرهشده
| متغیر محیطی | هدف |
|---|---|
BEA_FILE | دفتر کل ریشه پیشفرض پس از --file |
BEA_CONFIG_DIR | نادیدهگرفتن دایرکتوری پیکربندی کاربر |
XDG_CONFIG_HOME | در غیر این صورت از $XDG_CONFIG_HOME/bea استفاده کنید و در صورت نبود به ~/.config/bea برگردید |
XDG_CACHE_HOME | پایه دایرکتوری کش؛ در غیر این صورت ~/.cache/bea |
BEA_TOKEN | نادیدهگرفتن اعتبارنامه میزبانیشده؛ بر اعتبارنامههای ذخیرهشده اولویت دارد و ذخیره نمیشود |
BEA_API_URL | پایه API؛ پیشفرض https://api.v3.beancount.io |
BEA_DASHBOARD_URL | پایه ورود مرورگر؛ پیشفرض https://beancount.io |
BEA_NO_UPDATE_NOTIFIER | غیرفعالکردن اعلانهای بهروزرسانی غیرفعال در صورت درست بودن |
CI | غیرفعالکردن اعلانهای خط فرمان و اعلانهای بهروزرسانی غیرفعال در صورت درست بودن |
مقادیر درست عبارتند از 1, true, yes, و on، بدون حساسیت به بزرگی/کوچکی حروف و فاصلههای اطراف. حالت پیکربندی شامل اعتبارنامهها، تاریخچه اعلان Ask، مهارتهای کاربر، مسیرهای importer به خاطر سپردهشده و کشهای بررسی بهروزرسانی است. قفلهای نوشتن در زیر locks/ دایرکتوری کش، خارج از دایرکتوری دفتر کل شما قرار دارند.
bea upgrade --check نسخهها و روش نصب را بدون ارتقا گزارش میکند. bea upgrade brew upgrade bea, uv tool upgrade beancount-io, یا pipx upgrade beancount-io را فراخوانی میکند. نصبهای قابل ویرایش راهنمای بهروزرسانی دستی دریافت میکنند. بررسیهای غیرفعال حداکثر یکبار در روز در نسخههای نصبشده تعاملی اجرا میشوند؛ upgrade --check صریح همچنان وقتی اعلان غیرفعال غیرفعال است اجرا میشود.
با مدیر مربوطه حذف نصب کنید: brew uninstall bea, uv tool uninstall beancount-io, یا pipx uninstall beancount-io. فایلهای دفتر کل و پیکربندی کاربر شما باقی میمانند.
رفعهای رایج
| علامت | گام بعدی |
|---|---|
| دفتر کل یافت نشد | --file PATH را انتخاب کنید، وارد دایرکتوری دفتر کل شوید یا برای کتابهای جدید از bea init استفاده کنید |
| یک پرچم سراسری میگوید «گزینهای وجود ندارد» | آن را قبل از دستور حرکت دهید، مانند bea --file main.bean check |
| یک حساب ناشناخته است | آن را با bea add open --date YYYY-MM-DD --account ACCOUNT باز کنید |
| یک حساب غیرفعال است | تاریخهای باز/بستن ذکرشده را بخوانید؛ تاریخ تراکنش یا سابقه حساب را اصلاح کنید |
| یک پد استفاده نشده است | اظهارنظر مانده بعدی آن را کامل کنید؛ برای یک جفت اتمی از add balance --pad-from استفاده کنید |
| تبدیل ارز ناقص است | قیمتهایی را که تاریخهای ذکرشده در خطا را پوشش میدهند اضافه کنید، یا units را بررسی کنید |
| یک سند یافت نمیشود | مسیر آن را در کنار فایل دستور، از جمله مقصد --into حل کنید |
| دفتر کل در حین نوشتن تغییر کرد | محتوای جدید را بررسی کنید، سپس از یک پیشنمایش تازه دوباره تلاش کنید |
| تشخیص پوسته شکست خورد | یک پوسته را مشخص کنید، مانند bea --shell zsh --show-completion |
از bea COMMAND --help برای بررسی نسخه نصبشده خود استفاده کنید. مرجع مخزن منبع شامل مثالهای اضافی و تعریفهای دقیق مدل دستور است.