본문으로 건너뛰기

Beancount CLI 빠른 시작

bea 명령어를 설치하고, 로컬 Beancount 원장을 만들고, 첫 구매를 기록하고, 잔액을 확인합니다.

bea(Beancount.io 명령줄 도구)로 로컬 원장을 만들고 첫 구매를 기록합니다. 로컬 장부 작성에는 Beancount.io 계정이 필요하지 않습니다.

이 연습은 당좌예금에 1,000 USD로 시작합니다. 12.50 USD 커피 구매 후, 987.50 USD 잔액을 확인하게 됩니다.

1. 명령어 설치​

macOS 또는 Linux에서 Homebrew 사용 시:

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

Homebrew를 사용하지 않는다면, uv를 설치하고 uv tool install beancount-io를 실행하세요. Python 패키지는 Python 3.12 이상이 필요합니다. Homebrew는 설치 중에 회계 엔진을 제공합니다. PyPI 사용 시, uv를 유지하세요: 첫 번째 로컬 명령어는 관리되는 엔진을 다운로드하고, 이후 명령어는 오프라인으로 재사용합니다. Beancount를 별도로 설치할 필요는 없습니다.

2. 원장 만들기​

새 디렉토리를 선택하세요. 이 예제는 ~/my-books 안에 main.bean을 생성합니다:

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를 실행하세요. 마법사가 통화, 기록 시작 날짜 및 당좌예금 잔액을 묻습니다.

3. 구매 기록​

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

비용은 계정의 USD 통화를 사용합니다. Beancount는 다른 포스팅을 -12.50 USD로 자동 입력합니다. 오늘 구매한 경우 --date를 생략할 수 있습니다.

각 추가는 파일이 교체되기 전에 전체 원장에 대해 검사됩니다. 알 수 없는 계정이나 불균형 거래는 안내와 함께 오류를 생성합니다.

4. 결과 확인​

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

거래 목록은 포스팅 금액과 함께 최신 항목을 먼저 표시합니다. 대차대조표는 당좌예금에 987.50 USD를 보여줍니다.

해당 금액을 직접 확인하려면:

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

쿼리 테이블은 결과의 정밀도를 보존합니다. 구조화된 출력을 위해, 명령어 앞에 전역 --json 플래그를 넣으세요:

bea --json list transaction --limit 10

5. 장부를 깔끔하게 유지하기​

파일을 수동으로 편집한 후 bea check를 실행하세요. 열을 정렬하려면 bea format -i main.bean을 실행하세요. -i 없이, 포맷된 텍스트는 표준 출력으로 나가고 파일은 변경되지 않습니다. 스크립트가 포맷이 필요할 때 실패해야 한다면 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를 사용하여 설치된 버전에서 사용 가능한 옵션을 확인하세요.

출처: https://beancount.io/ko/docs/Basics/bea-cli