부록 B
명령어 cheat sheet
Linux · Git · npm · pip · pm2 · systemd · wrangler · Anthropic API
📑 이 부록에서 다룰 내용
📘 이 부록의 목적 + 사용법
목적: 1인 운영자가 매일·매주 사용하는 명령어를 한 곳에 모음. Linux · Git · npm · pip · pm2 · systemd · Cloudflare wrangler · Anthropic API curl. 표 형식 — 명령어 · 설명 · 예시.
사용법: 막힘 시점에 5초 안 펼침. CLAUDE.md §7 Common Commands에 자주 쓰는 5~10개 박음.
파일·폴더
| 명령어 | 설명 | 예시 |
|---|---|---|
ls | 폴더 목록 | ls -la (숨김 + 권한) |
cd | 폴더 이동 | cd ~/projects/jupjup |
pwd | 현재 폴더 | pwd |
mkdir | 폴더 만들기 | mkdir -p src/components |
rm | 삭제 | rm -rf node_modules |
cp | 복사 | cp -r src/ backup/ |
mv | 이동·이름 변경 | mv old.md new.md |
find | 파일 찾기 | find . -name "*.md" |
grep | 본문 검색 | grep -r "TODO" . |
SSH·원격
| 명령어 | 설명 | 예시 |
|---|---|---|
ssh | 원격 접속 | ssh user@host -p 22 |
scp | 파일 전송 | scp file.zip user@host:~/ |
rsync | 동기화 | rsync -av src/ user@host:dst/ |
ssh-keygen | 키 만들기 | ssh-keygen -t ed25519 |
ssh-copy-id | 키 등록 | ssh-copy-id user@host |
시스템
| 명령어 | 설명 | 예시 |
|---|---|---|
top | 프로세스 종합 | top |
htop | 시각 프로세스 | htop |
ps | 프로세스 펼침 | ps aux | grep node |
kill | 프로세스 종료 | kill -9 12345 |
df | 디스크 용량 | df -h |
du | 폴더 크기 | du -sh node_modules |
free | 메모리 | free -h |
uname | 시스템 정보 | uname -a |
네트워크
| 명령어 | 설명 | 예시 |
|---|---|---|
curl | HTTP 호출 | curl -X GET https://api.example.com |
wget | 파일 다운로드 | wget https://example.com/file.zip |
ping | 호스트 점검 | ping 8.8.8.8 |
netstat | 포트 펼침 | netstat -tunlp |
ss | netstat 대체 | ss -tlnp |
dig | DNS 점검 | dig example.com |
기본
| 명령어 | 설명 | 예시 |
|---|---|---|
git init | 새 repo | git init |
git clone | 복제 | git clone https://github.com/user/repo |
git status | 상태 펼침 | git status |
git add | 스테이징 | git add . 또는 git add file.md |
git commit | 커밋 | git commit -m "메시지" |
git push | 원격 push | git push origin main |
git pull | 원격 pull | git pull origin main |
git fetch | 원격 fetch | git fetch --all |
브랜치
| 명령어 | 설명 | 예시 |
|---|---|---|
git branch | 브랜치 펼침 | git branch -a |
git checkout | 브랜치 전환 | git checkout dev |
git checkout -b | 새 브랜치 + 전환 | git checkout -b feature/login |
git merge | 머지 | git merge feature/login |
git rebase | 리베이스 | git rebase main |
git branch -d | 브랜치 삭제 | git branch -d feature/old |
이력
| 명령어 | 설명 | 예시 |
|---|---|---|
git log | 커밋 이력 | git log --oneline -10 |
git diff | 차이 펼침 | git diff HEAD~1 |
git blame | 누가 변경 | git blame SPEC.md |
git show | 커밋 본문 | git show abc1234 |
git tag | 태그 박기 | git tag v0.1-G1-passed |
보호·복원
| 명령어 | 설명 | 예시 |
|---|---|---|
git stash | 임시 저장 | git stash |
git stash pop | 임시 복원 | git stash pop |
git reset | 리셋 | git reset --hard HEAD~1 |
git revert | 되돌림 commit | git revert abc1234 |
git reflog | 참조 이력 | git reflog |
npm
| 명령어 | 설명 | 예시 |
|---|---|---|
npm init | package.json | npm init -y |
npm install | 설치 | npm install 또는 npm i |
npm i [pkg] | 패키지 추가 | npm i react@latest |
npm i -D [pkg] | dev 의존성 | npm i -D typescript |
npm run [script] | 스크립트 실행 | npm run dev |
npm test | 테스트 | npm test |
npm update | 업데이트 | npm update |
npm audit | 보안 점검 | npm audit |
npm cache clean | 캐시 비움 | npm cache clean --force |
yarn·pnpm 대응
| npm | yarn | pnpm |
|---|---|---|
npm install | yarn | pnpm install |
npm i [pkg] | yarn add [pkg] | pnpm add [pkg] |
npm run [script] | yarn [script] | pnpm [script] |
| 명령어 | 설명 | 예시 |
|---|---|---|
python -m venv | 가상 환경 | python -m venv venv |
source venv/bin/activate | 가상 환경 진입 | (Linux/Mac) |
venv\Scripts\activate | 가상 환경 진입 | (Windows) |
pip install | 설치 | pip install requests |
pip install -r | 종합 설치 | pip install -r requirements.txt |
pip freeze | 설치 목록 | pip freeze > requirements.txt |
pip uninstall | 제거 | pip uninstall requests |
pip list | 펼침 | pip list |
| 명령어 | 설명 | 예시 |
|---|---|---|
pm2 start | 시작 | pm2 start app.js --name jupjup |
pm2 list | 펼침 | pm2 list |
pm2 logs | 로그 펼침 | pm2 logs jupjup |
pm2 stop | 중지 | pm2 stop jupjup |
pm2 restart | 재시작 | pm2 restart jupjup |
pm2 delete | 삭제 | pm2 delete jupjup |
pm2 startup | 부팅 시 자동 | pm2 startup |
pm2 save | 저장 | pm2 save |
pm2 monit | 시각 점검 | pm2 monit |
| 명령어 | 설명 | 예시 |
|---|---|---|
systemctl start | 시작 | sudo systemctl start nginx |
systemctl stop | 중지 | sudo systemctl stop nginx |
systemctl restart | 재시작 | sudo systemctl restart nginx |
systemctl status | 상태 | sudo systemctl status nginx |
systemctl enable | 부팅 자동 | sudo systemctl enable nginx |
systemctl disable | 부팅 X | sudo systemctl disable nginx |
journalctl | 로그 | journalctl -u nginx -f |
systemctl reload | 설정 재로드 | sudo systemctl reload nginx |
| 명령어 | 설명 | 예시 |
|---|---|---|
wrangler login | 로그인 | wrangler login |
wrangler init | 새 Worker | wrangler init my-worker |
wrangler dev | 로컬 개발 | wrangler dev |
wrangler deploy | 배포 | wrangler deploy |
wrangler tail | 로그 펼침 | wrangler tail |
wrangler d1 create | D1 만들기 | wrangler d1 create jupjup |
wrangler d1 execute | SQL 실행 | wrangler d1 execute jupjup --command "SELECT * FROM users" |
wrangler kv:namespace create | KV 만들기 | wrangler kv:namespace create CACHE |
wrangler r2 bucket create | R2 만들기 | wrangler r2 bucket create images |
wrangler secret put | 시크릿 박음 | wrangler secret put ANTHROPIC_KEY |
기본 호출
💻 기본 API 호출
curl https://api.anthropic.com/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-sonnet-4-6",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "안녕하세요"}
]
}'prompt caching 적용
💻 prompt caching 호출
curl https://api.anthropic.com/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: prompt-caching-2024-07-31" \
-d '{
"model": "claude-sonnet-4-6",
"max_tokens": 1024,
"system": [
{
"type": "text",
"text": "긴 시스템 프롬프트 1500자 이상...",
"cache_control": {"type": "ephemeral"}
}
],
"messages": [
{"role": "user", "content": "질문"}
]
}'batch API (50% 할인)
💻 batch API 호출
# 배치 만들기
curl https://api.anthropic.com/v1/messages/batches \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d '{
"requests": [
{
"custom_id": "req-1",
"params": {
"model": "claude-sonnet-4-6",
"max_tokens": 1024,
"messages": [{"role": "user", "content": "분류 1"}]
}
}
]
}'
# 배치 결과 펼침
curl https://api.anthropic.com/v1/messages/batches/[BATCH_ID] \
-H "x-api-key: $ANTHROPIC_API_KEY"매일 사용 5개
| 명령 | 설명 |
|---|---|
/effort | 응답 품질 조절 (low·medium·high) |
/model | 모델 전환 (sonnet·opus·haiku) |
/clear | 컨텍스트 초기화 |
/compact | 컨텍스트 압축 |
/tdd | TDD 흐름 시작 |
자주 사용 5개
| 명령 | 설명 |
|---|---|
/context | 활성 MCP·세션 펼침 |
/memories | 메모리 펼침·정정 |
/cost | 비용 펼침 |
/review | 코드 리뷰 |
/help | 도움말 |
Phase 1 셋업 (5분)
💻 Phase 1 셋업 흐름
# 새 프로젝트 시작 mkdir my-project && cd my-project git init npm init -y # 5파일 만들기 touch SPEC.md PLAN.md REVIEW.md BUILD.md CLAUDE.md echo "# My Project" > SPEC.md # 첫 commit git add . git commit -m "Day 0: 5파일 초기 구조" # Cloudflare Pages 결합 # 1. GitHub repo 만들기 # 2. Cloudflare Dashboard → Pages → Connect to Git # 3. 자동 배포 시작 # 도메인 결합 # Cloudflare DNS → Add Record
매일 작업 흐름
💻 매일 작업 흐름
# 작업 시작 cd ~/projects/my-project git pull origin main # Claude Code 시작 claude /model claude-sonnet-4-6 /effort medium # 작업 종료 git add . git commit -m "Day N: [무엇 했는지]" git push origin main # BUILD.md 트레이스 확인 cat BUILD.md | tail -10
Phase 2 진입 시
💻 Phase 2 진입 흐름
# Vercel Pro 진입 # 1. vercel.com → Settings → Plan → Pro # Supabase Pro 진입 # 1. supabase.com → Project → Settings → Billing → Pro # Cloudflare Workers Paid # 1. dash.cloudflare.com → Workers & Pages → Plans → Paid # 비용 점검 (매월) claude --print "BUILD.md를 읽고 이번 달 API·호스팅·VPS 비용 종합"
| 증상 | 점검 명령 |
|---|---|
| Git 충돌 | git status + git diff |
| npm 캐시 문제 | npm cache clean --force |
| node_modules 깨짐 | rm -rf node_modules && npm install |
| 포트 사용 중 | lsof -i :3000 (Linux/Mac) 또는 netstat -ano (Windows) |
| API 응답 느림 | curl -w "@curl-format.txt" (응답 시간 펼침) |
| Cloudflare 배포 X | wrangler deploy --verbose |
| Supabase 연결 X | supabase status (CLI) |
🎉 부록 B 마무리
Linux · Git · npm · pip · pm2 · systemd · Cloudflare wrangler · Anthropic API · Claude Code 슬래시 명령 종합입니다. 매일·매주 사용 명령 5초 안 펼침합니다.
다음 부록: 부록 D — 5파일 템플릿. SPEC·PLAN·REVIEW·BUILD·CLAUDE.md 그대로 복사 가능.