콘텐츠로 이동

Set default theme

`cat`bat 치트시트
플랫폼명령어
Ubuntu/Debiansudo apt install bat (binary may be named batcat)
Arch Linuxsudo pacman -S bat
Fedora/RHELsudo dnf install bat
macOS (Homebrew)brew install bat
macOS (MacPorts)sudo port install bat
Windows (Scoop)scoop install bat
Windows (Chocolatey)choco install bat
Windows (Winget)winget install sharkdp.bat
Rust/Cargocargo install --locked bat
Dockerdocker pull danlynn/bat
alias bat='batcat'참고: Debian/Ubuntu에서는 필요한 경우 별칭을 생성하세요:
명령어설명
bat file.txt구문 강조 및 줄 번호와 함께 파일 표시
bat file1.txt file2.py헤더와 함께 여러 파일 표시하기
bat -n file.txt줄 번호를 명시적으로 표시 (기본적으로 활성화됨)
bat -p file.txtPlain mode (no decorations, like cat)
bat -pp file.txt추가 일반 모드 (완전히 일반적인 출력)
bat -A file.txt모든 비인쇄 문자 (탭, 공백, 줄 끝) 표시
bat -r 10:20 file.txt특정 라인 범위 표시 (10-20번 라인)
bat -r :50 file.txt처음 50줄 표시
bat -r 100: file.txt100번 줄부터 끝까지 표시
`echo “text” \bat`
bat --list-languages지원되는 모든 프로그래밍 언어 표시
bat --list-themes사용 가능한 모든 색상 테마 표시
bat -l python file.txt특정 언어/구문 강조 표시 강제하기
bat --plain file.txt구문 강조 표시 비활성화
bat --paging=never file.txt자동 페이징 비활성화
명령어설명
bat --theme="Dracula" file.py특정 색상 테마 사용
bat --diff file.txtGit 수정 사항을 구문 강조와 함께 표시
bat --no-git file.txtGit 통합 마커 비활성화
bat --tabs=4 file.py사용자 지정 탭 너비 설정
bat --wrap=never file.txt줄 바꿈 비활성화
bat --terminal-width=80 file.txt특정 터미널 너비 강제하기
bat --style=numbers,changes file.txt라인 번호와 Git 변경 사항만 표시
bat --style=header,grid file.txt헤더와 그리드 구분선만 표시
bat --style=plain file.txt모든 장식 제거
bat --file-name="Custom" file.txt헤더에 사용자 지정 이름 표시
bat --decorations=never file.txt모든 장식을 비활성화 (적절한 경우에도)
bat --color=always file.txt색상 출력 강제 (파이프 중에도)
bat --paging=always file.txt작은 파일에 대해서도 페이저 강제 적용
bat --pager="less -RF" file.txt옵션과 함께 사용자 지정 페이저 사용하기
bat --map-syntax='*.conf:INI' file.conf특정 구문에 맵 파일 확장자 지정하기
bat --generate-config-file기본 구성 파일 생성
bat cache --build구문/테마 캐시 다시 빌드
bat cache --clear구문/테마 캐시 지우기
플랫폼경로
Linux/macOS~/.config/bat/config
Windows%APPDATA%\bat\config
~/.config/bat/config환경 설정 파일을 생성하세요:
# Set default theme
--theme="Dracula"

# Always show line numbers and changes
--style="numbers,changes,header,grid"

# Use 4-space tabs
--tabs=4

# Automatic paging
--paging=auto

# Show non-printable characters
--show-all

# Enable italic text (if terminal supports)
--italic-text=always

# Custom syntax mappings
--map-syntax="*.conf:INI"
--map-syntax=".ignore:Git Ignore"
--map-syntax="*.jenkinsfile:Groovy"
--map-syntax="*.log:Log"
--map-syntax=".env:Bash"
# Set default theme
export BAT_THEME="Dracula"

# Set default style components
export BAT_STYLE="numbers,changes,header"

# Set default pager
export BAT_PAGER="less -RF"

# Disable paging entirely
export BAT_PAGER=""

# Custom config directory
export BAT_CONFIG_PATH="/custom/path/to/config"
```### 환경 변수
```bash
# Create themes directory
mkdir -p "$(bat --config-dir)/themes"

# Download theme file (.tmTheme format)
cd "$(bat --config-dir)/themes"
wget https://example.com/theme.tmTheme

# Rebuild cache to use new theme
bat cache --build
```### 사용자 정의 테마

| 컴포넌트 | 설명 |
|-----------|-------------|
| `full` | 모든 구성 요소 (기본값) |
| `auto` | 출력에 기반한 자동 |
| `plain` | 장식 없음 |
| `numbers` | 번호 |
| `changes` | Git 수정 마커 |
| `header` | 파일 이름 헤더 |
| `grid` | 그리드 구분자 |
| `rule` | 수평선 |
| `snip` | 범위에 대한 스닙 마커 |사용 가능한 스타일 구성 요소 (쉼표로 구분):
```bash
# View file with Git changes highlighted
bat --diff src/main.py

# Compare with previous commit
git show HEAD~1:config.yaml | bat -l yaml --file-name="Previous Version"

# Review multiple changed files
git diff --name-only | xargs bat --diff
```### 사용 사례: Git 통합을 통한 코드 리뷰
```bash
# View application logs with syntax highlighting
bat --language=log /var/log/application.log

# View specific error section
bat -r 1000:2000 /var/log/syslog | grep ERROR

# Monitor live logs (disable paging)
tail -f /var/log/app.log | bat --paging=never -l log

# Search logs with context
bat /var/log/nginx/error.log | grep -C 5 "ERROR"
```### 사용 사례: 로그 파일 분석
```bash
# Review system configurations
bat /etc/nginx/nginx.conf /etc/ssh/sshd_config

# Compare configurations side by side
diff <(bat -p config.prod.yml) <(bat -p config.dev.yml)

# Check for hidden characters in config
bat -A .env

# View Kubernetes resources
kubectl get deployment myapp -o yaml | bat -l yaml
```### 사용 사례: 구성 파일 관리
```bash
# View Dockerfile with syntax highlighting
bat Dockerfile

# Inspect docker-compose configurations
bat docker-compose.yml docker-compose.override.yml

# View container logs with syntax
docker logs container_name 2>&1 | bat --paging=never -l log

# Display formatted JSON from API
curl -s https://api.github.com/repos/sharkdp/bat | bat -l json
```### 사용 사례: Docker 및 컨테이너 워크플로우
```bash
# View shell script with line numbers
bat -n deploy.sh

# Check specific function (lines 45-78)
bat -r 45:78 automation.sh

# Detect problematic characters
bat -A problematic-script.sh

# View multiple related scripts
bat scripts/*.sh
```### 사용 사례: 스크립트 개발 및 디버깅
`-p``less` 스크립팅에 사용`bat -p``bat`

Would you like me to provide more context or details about any of these translations?`bat --plain`처리를 방해할 수 있는 장식을 피하기 위해`~/.config/bat/config`**기본값 구성**: 설정하기`alias cat='bat --paging=never --style=plain'`원활한 대체를 위해 셸 구성에 추가`--diff`구문 강조와 함께 인라인으로 변경 사항을 확인할 때 사용`--map-syntax`**사용자 정의 확장자 매핑**: 구성 파일에서 프로젝트별 파일 유형에 사용`.jenkinsfile``.conf``--paging=never`대화형 페이저 문제를 방지하기 위해 다른 명령으로 출력을 파이핑할 때 항상 사용`-l`적절한 구문 강조를 위해 확장자 없는 파일에 명시적으로 언어 지정`bat cache --build`추가된 사용자 정의 테마나 구문을 사용 가능하게 하기 위해 실행

## 문제 해결

| 문제 | 솔루션 |
|-------|----------|
| Binary named `batcat` instead of `bat` | Create alias: `alias bat='batcat'` or symlink: `ln -s /usr/bin/batcat ~/.local/bin/bat` |
| No syntax highlighting | Check language support with `bat --list-languages` and use `-l` to force language |
| Pager interferes with pipes | Use `bat --paging=never` or set `export BAT_PAGER=""` |
| Theme not displaying correctly | Verify terminal supports 256 colors; try different theme with `bat --theme="GitHub"` |
| Custom theme not appearing | Ensure theme file is in `$(bat --config-dir)/themes/` and run `bat cache --build` |
| Line numbers misaligned | Check tab width setting; adjust with `--tabs=4` or in config file |
| Git integration not working | Ensure file is in Git repository; disable with `--no-git` if not needed |
| Config file changes ignored | Verify file location with `bat --config-file`; check for syntax errors in config |
| Performance issues with large files | Use `--paging=never` and pipe to `less`, or use line ranges with `-r` |
| Unicode characters display incorrectly | Ensure terminal uses UTF-8 encoding; check `locale` settings |
## 빠른 참조: 일반적인 플래그

| 짧은 | | 목적 |
|-------|------|---------|
| `-p` | `--plain` | 일반 출력 모드 |
| `-n` | `--number` | 번호 표시 |
| `-A` | `--show-all` | 비인쇄 문자 표시 |
| `-l` | `--language` | 구문 언어 설정 |
| `-r` | `--line-range` | 라인 범위 표시 |
| `-H` | `--highlight-line` | 특정 줄 강조하기 |
| `-d` | `--diff` | Git diff 보기 |
|  | `--theme` | 색상 테마 설정 |
|  | `--style` | 스타일 컴포넌트 설정 |
|  | `--paging` | 페이저 동작 제어 |
|  | `--tabs` | 너비 설정 ||  | `--wrap`| 줄바꿈 제어 |

Note: Lines 6 and 7 and line 11 were empty in the original text, so I've left them blank in the translation as well.