제3장: 일상 파일 작업 및 백그라운드 큐¶
매일 파일 관리자는 데이터를 얼마나 빠르고 정확하고 안전하게 조작할 수 있는지라는 하나의 기준으로 평가됩니다. ATBCmder에서는 여러 개의 겹치는 창을 저글링하거나 실수로 놓기 오류를 견디거나 대용량 파일 전송으로 인해 화면이 정지되는 동안 가만히 기다릴 필요가 없습니다.
이 장에서는 방향 복사 및 이동 워크플로, 내부 인라인 이름 바꾸기, 와일드카드를 사용한 전원 표시, 시스템 끌어서 놓기 상호 운용성, 세분화된 충돌 처리, UNIX 권한 및 심볼릭 링크, 다중 스레드 백그라운드 작업 대기열 등 파일 작업의 전체 스펙트럼을 다룹니다.
1. 시각적 빠른 시작: 방향 작업 모델¶
정통 파일 관리자는 소스 ➔ 대상 방향 모델을 사용합니다. 파일 전송 또는 링크 생성을 시작하면 ATBCmder는 활성 패널(소스)에서 선택한 항목을 가져와 비활성 패널(대상)에 열려 있는 디렉터리로 직접 작업을 실행합니다.
┌────────────────────────────────────────────────────────────────────────────────────────┐
│ 활성 패널 (원본 Source) 비활성 패널 (대상 Target) │
│ /Users/brain/Downloads /Volumes/ExternalSSD/Projects │
├──────────────────────────────────────────────┬───┬─────────────────────────────────────┤
│ 이름 크기 수정일 │ 복│ 이름 크기 │
│ ▸ [..] --:-- │ 사│ ▸ [..] │
│ ✔ database_dump.sql 1.8 GB 14:10 │ ➔ │ ▸ client_portal │
│ ✔ schema_migration.sql 42 KB 14:12 │ │ ▸ microservices │
│ ● notes.txt 4 KB 09:30 │ 대│ ● .env.production │
│ │ 상│ │
│ [2개 파일 선택됨: 1.8 GB] │ │ [대상 디렉터리 준비 완료] │
├──────────────────────────────────────────────┴───┴─────────────────────────────────────┤
│ [F5] 복사 [F6] 이동 [Shift+F5] 동일 위치 복제 [F8 / ⌘⌫] 휴지통으로 이동 │
└────────────────────────────────────────────────────────────────────────────────────────┘
듀얼 매트릭스 핵심 운영 치트 시트¶
| 액션 | macOS 바로가기 | 클래식 커맨더 단축키 | 명령 ID | 설명 |
|---|---|---|---|---|
| 대상에 복사 | F5 / Fn+F5 |
F5 |
cm_Copy |
선택한 항목을 반대편 패널에 복사합니다. |
| 같은 패널에 복사 | Shift+F5 / ⇧F5 |
Shift+F5 |
cm_CopySamePanel |
이름 바꾸기 프롬프트가 있는 활성 패널의 항목을 복제합니다. |
| 대상으로 이동 | F6 / Fn+F6 |
F6 |
cm_Move |
선택한 항목을 반대 패널로 이동합니다. |
| 새 폴더(MkDir) | F7 / Fn+F7 |
F7 |
cm_MkDir |
활성 패널에 새 디렉터리를 만듭니다. |
| 휴지통으로 삭제 | F8 / ⌘⌫ |
F8 / Delete |
cm_Delete |
선택한 항목을 macOS 휴지통으로 이동합니다. |
| 영구 삭제 | Shift+Delete / ⇧⌦ |
Shift+F8 |
cm_Delete |
휴지통을 우회하고 파일을 영구적으로 연결 해제합니다. |
| 인라인 빠른 이름 바꾸기 | F2 / Shift+F6 |
Shift+F6 |
cm_RenameOnly |
테이블 행 내부에서 직접 활성 항목의 이름을 바꿉니다. |
| 파일 속성 | Alt+Enter / ⌥⏎ |
Alt+Enter |
cm_SetFileProperties |
UNIX 권한, 타임스탬프 및 메타데이터 대화 상자를 엽니다. |
| 폴더 공간 계산 | Alt+Shift+Enter / ⌥⇧⏎ |
Alt+Shift+Enter |
cm_CountDirContent |
디렉터리의 재귀 바이트를 계산합니다(선택한 총계의 경우 Ctrl+L / cm_CalculateSpace). |
| 백그라운드 큐 | Toolbar ⚡ |
— | cm_OperationsPanel |
3큐 백그라운드 전송 모니터를 엽니다. |
시각적 랜드마크: 중간 도구 모음¶
ATBCmder에는 두 패널을 분리하는 중앙 구분선에 직접 내장된 전용 수직 빠른 작업 도구 모음이 있습니다.
중앙 중간 도구 모음은 보기(F3), 편집(F4), 복사(F5), 이동(F6), 새 폴더(F7), 삭제(F8) 및 패널 교체에 대한 즉각적인 마우스 액세스를 제공합니다.
2. 핵심 작업: 복사, 이동, MkDir 및 삭제¶
일일 파일 관리는 복사, 이동, 디렉터리 생성, 원치 않는 파일 삭제라는 네 가지 기본 작업을 중심으로 이루어집니다.
2.1 파일 복사(F5 / cm_Copy)¶
파일이나 디렉터리를 복사하려면:
- 키보드나 마우스를 사용하여 활성 패널에서 하나 이상의 항목을 선택합니다.
F5(또는 Apple 키보드의 경우Fn+F5을 누르거나 중간 도구 모음에서 복사를 클릭)을 누르세요.- 복사 대화상자가 나타납니다.
- 대상 라인: 상대 패널의 현재 디렉토리 경로로 자동으로 채워집니다. 이 경로를 수동으로 편집하거나, 새 하위 폴더 이름을 추가하여 동시에 복사 및 생성하거나,
...을 클릭하여 찾아볼 수 있습니다. - 시작(
Enter): 실시간 진행 대화 상자와 함께 즉시 전경 복사를 시작합니다. - 큐에 추가(
F2): 백그라운드에서 실행되도록 전송을 큐에 넣습니다(섹션 7.4 참조). - 옵션: 고급 충돌 규칙, 속성 보존 및 체크섬 확인을 확장합니다.
┌────────────────────────────────────────────────────────┐
│ Copy file(s) │
│ Copy selected 3 files? │
│ To: [/Volumes/Backup/Assets ] │
│ [Options ▼] [Add To Queue #1 ▾] [Cancel] [Start] │
└────────────────────────────────────────────────────────┘
패널 내 복제(Shift+F5 / cm_CopySamePanel)¶
현재 디렉터리 내에서 파일을 빠르게 복제하려면(예: nginx.conf을 편집하기 전에 백업 생성):
- 항목을 강조 표시하고
Shift+F5(또는⇧F5)을 누릅니다. - ATBCmder는 동일 디렉터리의 대상 경로를 묻는 메시지를 표시하므로 새 이름(예:
nginx.conf.bak)을 입력할 수 있습니다.
표준 macOS 클립보드(Cmd+C ➔ Cmd+V)¶
ATBCMder는 macOS 시스템 클립보드 단축키와 완벽하게 통합됩니다.
Cmd+C(⌘C): 선택한 파일 경로를 클립보드(cm_CopyToClipboard)에 복사합니다.Cmd+V(⌘V): 클립보드의 파일을 활성 패널(cm_PasteFromClipboard)에 붙여넣습니다.Cmd+Option+V(⌥⌘V): 클립보드 파일을 활성 패널(cm_PasteAsMove)로 이동합니다.
2.2 파일 이동(F6 / cm_Move)¶
이동하면 파일이 소스 디렉터리에서 대상 디렉터리로 전송됩니다.
- 항목을 선택하고
F6(또는Fn+F6/ 중간 도구 모음에서 이동 클릭)을 누릅니다. - 이동 대화상자가 열리고 대상 패널 경로가 표시됩니다.
Enter를 눌러 다음을 실행합니다.- 동일 파일 시스템 이동: 원시 디스크 블록을 이동하지 않고 파일 시스템 카탈로그 참조를 업데이트하여 APFS/HFS+ 볼륨에서 즉각적이고 원자적입니다.
- 파일 시스템 간 이동: 볼륨 전체에서 데이터를 대상으로 스트리밍하고, 바이트 완료를 확인하고, 확인된 도착 시 소스를 안전하게 제거합니다.
- 동일한 이름의 기존 파일이 대상에 있는 경우 ATBCmder는 일시 중지하고 덮어쓰기 대화 상자를 호출합니다(섹션 6 참조).
2.3 새 디렉토리 생성(F7 / cm_MkDir)¶
즉시 폴더 구조를 만들어야 합니까?
F7(또는Fn+F7/Shift+Cmd+N/cm_MkDir)을 누릅니다.- 간단한 프롬프트가 나타납니다:
Enter folder name:. - 폴더 이름을 입력하고
Enter을 누릅니다.
┌──────────────────────────────────────────────┐
│ Create Directory │
│ Enter folder name: │
│ [2026-09-Q3_Reports ] │
│ [Cancel] [OK (⏎)] │
└──────────────────────────────────────────────┘
하위 디렉터리 연결¶
단일 단계로 중첩된 폴더 계층 구조를 만들 수 있습니다. deep/nested/project/assets을 입력하면 4개의 계층 구조 수준이 모두 즉시 생성됩니다(mkdir -p과 동일).
자동 초점 배치¶
생성 시 ATBCmder는 자동으로 패널 커서를 새 폴더에 직접 배치하여 즉시 입력(Enter)하거나 파일을 전송할 수 있도록 준비합니다.
2.4 파일 삭제: macOS 휴지통과 영구 제거¶
안전과 복구 가능성이 가장 중요합니다. ATBCmder는 이중 삭제 워크플로를 지원합니다.
┌────────────────────────────────────────┐
│ File Deletion Trigger │
└───────────────────┬────────────────────┘
│
┌────────────────────┴───────────────────┐
▼ ▼
[ F8 / Delete / Cmd+Backspace ] [ Shift+Delete / Shift+F8 ]
│ │
▼ ▼
macOS System Trash (.Trash) Permanent Unlink
• Fully recoverable • Bypasses Trash
• Put Back support in Finder • Zero disk footprint
• Volume .Trashes directory • Unrecoverable without deep carve
macOS 휴지통으로 삭제(F8 / Delete / Cmd+Backspace)¶
- 선택한 파일은 macOS
send2trashAPI를 통해 시스템 휴지통으로 라우팅됩니다. - macOS Finder("Put Back")를 통해 언제든지 파일을 검사하거나 복원할 수 있습니다.
- 확인 대화 상자는 기본 설정(
operations.confirm_delete)에서 활성화하거나 억제할 수 있습니다.
영구 즉시 삭제(Shift+Delete / Shift+F8)¶
- 휴지통을 완전히 우회하여 즉시 파일 연결을 해제하고 저장 공간을 확보합니다.
- 휴지통 버퍼 제한이나 디스크 고갈로 인해 스테이징이 불가능한 수 기가바이트 규모의 가상 머신이나 디스크 이미지를 지우는 데 적합합니다.
휴지통을 지원하지 않는 볼륨(trash_unavailable 감지)¶
특정 네트워크 공유(SMB, NFS), 가상 파일 시스템(vfs://) 또는 .휴지통es 디렉터리가 없는 레거시 FAT/exFAT 파일 시스템으로 포맷된 외부 드라이브에서 삭제할 때 macOS는 항목을 휴지통으로 보낼 수 없습니다.
이러한 경우 ATBCmder는 지능형 안전 경고를 트리거합니다.
┌────────────────────────────────────────────────────────┐
│ Trash Unavailable │
│ The volume containing '/Volumes/NAS/backup.iso' does │
│ not support Trash. │
│ Would you like to permanently delete this file? │
│ │
│ [✔] Apply to all remaining items │
│ [Skip] [Delete Permanently] │
└────────────────────────────────────────────────────────┘
영구 삭제, 건너뛰기를 선택하거나 나머지 모든 항목에 적용을 선택하여 대규모 일괄 삭제를 자동으로 처리할 수 있습니다.
보안 멀티패스 파쇄(Alt+Delete / cm_Wipe)¶
원시 플래시 복구 도구를 통해 복구할 수 없어야 하는 민감한 문서, 자격 증명 또는 개인 키의 경우:
- 항목을 강조 표시하고 메뉴 파일 → 지우기(
Alt+Delete/cm_Wipe)를 선택합니다. - ATBCmder는 inode 연결을 해제하기 전에 임의의 비트 패턴과 0으로 다중 패스 덮어쓰기를 수행합니다.
3. 인라인 빠른 이름 바꾸기 및 이름 편집¶
단일 파일의 이름을 바꾸는 데 복잡한 메뉴나 대화 상자 팝업이 필요하지 않습니다. ATBCmder는 신속한 내부 테이블 행 편집 기능을 제공합니다.
┌─────────────────────────────────────────────────────────────────────────────────┐
│ Name Ext Size Date Modified │
│ ▸ [..] --:-- drwxr-xr-x │
│ ● Annual_Financial_Report_2025 .pdf 4.2 MB Today, 11:20 │
│ ▲ │
│ └── [Editable Text Box: Stem highlighted, .pdf extension preserved] │
└─────────────────────────────────────────────────────────────────────────────────┘
인라인 이름 바꾸기 트리거¶
- 패널에서 파일이나 디렉터리를 강조 표시합니다.
F2또는Shift+F6(cm_RenameOnly)을 누르거나 이미 강조 표시된 파일 이름을 한 번 클릭합니다.- 테이블 셀이 인라인 편집기(
QLineEdit)로 변환됩니다.
지능형 확장 보존¶
invoice_september.pdf과 같은 파일 이름을 바꾸는 경우:
- ATBCmder는 기본 파일 이름(
invoice_september)만 자동으로 미리 선택합니다. - 파일 확장자(
.pdf)는 선택되지 않고 그대로 유지되어 실수로 확장자가 제거되어 macOS 파일 연결이 끊어지는 것을 방지합니다. - 확장자를 수정하려면 화살표 키를 사용하거나 편집 상자에서
Cmd+A을 누르세요.
인라인 이름 바꾸기 내부의 키보드 단축키¶
Enter(Return): 새 이름을 커밋하고 패널을 다시 색인화합니다.Esc: 편집을 취소하고 이름을 변경하지 않고 원래 이름으로 복원합니다.Tab: 현재 이름을 커밋하고 목록에 있는 다음 파일 이름 바꾸기를 즉시 시작하여 키보드를 떠나지 않고도 빠른 순차 파일 이름 바꾸기가 가능합니다.
4. 선택 기술: 파워 마킹 파일¶
기존 파일 관리자에서는 커서 위치와 선택 항목이 밀접하게 결합되어 있습니다. 즉, Cmd을 누르지 않는 한 커서를 이동하면 이전 파일의 선택이 취소됩니다. ATBCmder에서는 커서 초점과 표시된 선택 항목이 분리되어 정밀한 일괄 스테이징이 가능합니다.
Status Column:
[ ] Unselected (cursor may or may not be on row)
[✔] Marked / Selected (accumulated into operation payload)
4.1 전역 선택 작업¶
| 액션 | macOS 바로가기 | 클래식 키 | 명령 ID | 설명 |
|---|---|---|---|---|
| 모두 선택 | Cmd+A / ⌘A |
Ctrl+A / Ctrl+Num+ |
cm_MarkMarkAll |
활성 패널의 모든 파일과 폴더를 표시합니다. |
| 모두 선택 취소 | Cmd+Shift+A / ⇧⌘A |
Ctrl+Shift+A / Ctrl+L |
cm_MarkUnmarkAll |
활성 패널의 모든 표시를 지웁니다. |
| 선택 반전 | Num* / ⌥⌘I |
Num* |
cm_MarkInvert |
선택 상태를 뒤집습니다. 표시된 상태가 표시 해제된 상태로 바뀌고 그 반대도 마찬가지입니다. |
4.2 패턴 및 와일드카드 선택¶
와일드카드를 선택하면 몇 번의 키 입력으로 수천 개의 디렉터리에 있는 수백 개의 특정 파일을 대상으로 지정할 수 있습니다.
┌────────────────────────────────────────────────────────┐
│ Mark Files by Pattern │
│ Pattern: [*.jpg;*.png;*.webp ] │
│ │
│ [✔] Case sensitive [ ] Regular expression │
│ [Cancel] [OK (⏎)] │
└────────────────────────────────────────────────────────┘
마크 그룹(Num+ / cm_MarkPlus)¶
Num+(키패드 플러스 또는 메뉴 표시 → 그룹 선택에서 트리거)을 누릅니다.- 표준 셸 와일드카드를 입력하세요.
*.log:.log로 끝나는 모든 파일을 표시합니다.*.jpg;*.png;*.webp: 여러 확장자를 동시에 일치시키기 위한 세미콜론으로 구분된 목록입니다.data_2026_??.csv: 두 자리 월별 파일(01~12)과 일치합니다.*draft*: "draft"라는 단어가 포함된 모든 파일과 일치합니다.- 일치하는 모든 항목을 즉시 선택하려면
Enter을 누르세요.
그룹 표시 해제(Num- / cm_MarkMinus)¶
Num-(키패드 마이너스)을 누릅니다.- 기존 선택 항목에서 일치하는 항목을 제거하는 패턴을 입력합니다(예:
*test*).
동일한 확장자로 모두 표시(Shift+Num+ / cm_MarkCurrentExtension)¶
- 임의의 파일(예:
app.tsx)에 커서를 놓습니다. Shift+Num+을 누르세요.- 현재 디렉터리의 모든 단일
.tsx파일이 즉시 선택됩니다.
4.3 범위 및 포인트 선택¶
- 연속 블록 선택(
Shift+Up/Shift+Down): 화살표 키로 탐색하는 동안Shift을 누르면 연속 선택 블록이 위쪽 또는 아래쪽으로 확장됩니다. - 단일 항목 전환(
Space/Insert/cm_SelectOrDeselectFile): Space을 누르면 커서 아래의 항목을 표시하거나 표시 해제하고 폴더에 있는 경우 디렉터리 크기를 즉시 계산합니다.Insert(또는 특정 Mac 키보드의 경우Fn+Return)을 누르면 항목이 표시되고 자동으로 커서가 다음 행으로 이동하여 한 손가락으로 빠르게 선택할 수 있습니다.- 마우스 및 트랙패드:
Cmd+Click: 다른 선택 사항을 변경하지 않고 개별 행의 선택 사항을 토글합니다.Shift+Click: 현재 앵커 행에서 클릭한 행까지 선택을 확장합니다.
상태 표시줄의 실시간 선택 원격 측정¶
파일이 표시될 때마다 하단 상태 표시줄이 즉시 업데이트됩니다.
대규모 복사 또는 삭제를 수행하기 전에 정확한 바이트 페이로드에 대한 실시간 상황 인식을 얻을 수 있습니다.
5. 드래그 앤 드롭 상호 운용성¶
ATBCmder는 드래그 앤 드롭을 최고의 시민으로 취급하는 동시에 정통 워크플로 및 macOS 데스크탑 에코시스템과의 완벽한 호환성을 유지합니다.
Dual-Panel Transfer External macOS Desktop
┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ Left Panel │══►│ Right Panel │ │ ATBCmder │══►│ Finder / App │
│ (Source) │ │ (Target) │ │ Panel │ │ (Desktop) │
└──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘
패널 간 끌기¶
- 활성 패널에서 표시된 항목을 클릭하고 중앙 분할기를 통해 비활성 패널로 드래그합니다.
- 대상 폴더로의 전송을 시작하려면 파일 테이블의 아무 곳에나 놓으십시오.
- 하위 폴더에 놓기: 특정 하위 디렉토리 행에 직접 놓으면 ATBCmder가 페이로드를 패널 루트가 아닌 해당 하위 폴더로 라우팅합니다.
macOS Finder, 데스크탑 및 외부 앱과 상호 작용¶
- ATBCmder로 드래그: Finder, 데스크탑 또는 AirDrop 다운로드에서 파일을 ATBCmder 패널로 직접 드래그하여 복사하거나 이동할 수 있습니다.
- ATBCmder에서 드래그: ATBCmder에서 파일을 VS Code, 터미널(파일 경로 붙여넣기), Slack, Apple Mail 또는 웹 브라우저 업로드 상자로 직접 드래그합니다.
드래그 중 수정자 키¶
| 수정자 키 | 드래그 동작 | 마우스 커서 아이콘 | 설명 |
|---|---|---|---|
| 수정자 없음 | 기본 조치 | 표준 화살표 | 여러 권에 걸쳐 복사합니다. 동일한 볼륨 내에서 이동합니다. |
옵션(⌥) |
강제 복사 | 녹색 + 배지 |
소스 파일은 그대로 두고 항상 항목을 복사합니다. |
명령(⌘) |
강제 이동 | 곡선 화살표 배지 | 항상 항목을 이동하고 도착 시 소스 파일의 연결을 해제합니다. |
스프링 로드 폴더¶
ATBCmder의 중첩된 디렉터리 위로 파일을 드래그하는 경우:
- 750밀리초 동안 대상 폴더 위에 마우스 커서를 올려 놓습니다.
- 폴더가 자동으로 깜박이고 열리며 내부를 탐색합니다.
- 마우스 버튼을 놓지 않고도 중첩된 하위 디렉터리의 여러 레벨을 탐색한 다음 페이로드를 원하는 위치에 정확히 놓을 수 있습니다.
6. 충돌 처리 및 갈등 해결¶
이름 충돌은 파일 관리에서 가장 위험한 순간입니다. 잘못된 파일을 덮어쓰면 작업 시간이 손실될 수 있습니다. ATBCmder는 덮어쓰기 전에 파일을 검사하고 세분화된 안전 제어를 제공하는 엔터프라이즈급 충돌 해결 엔진을 구현합니다.
┌────────────────────────────────────────────────────────────────────────────────────────┐
│ Confirm File Overwrite │
│ │
│ File already exists at the destination. │
│ │
│ Source: /Users/brain/Downloads/build_artifacts.zip │
│ Source info: 124,518,400 bytes, 2026-09-06 14:15 │
│ │
│ Destination: /Volumes/Backup/build_artifacts.zip │
│ Dest info: 118,204,112 bytes, 2026-09-01 09:30 │
│ │
│ Would you like to overwrite it? │
│ │
│ [Skip All] [Overwrite All] [Rename] [Auto-rename] │
│ │
│ [Cancel] [Skip] [Overwrite (⏎)] │
└────────────────────────────────────────────────────────────────────────────────────────┘
덮어쓰기 대화 상자 분석¶
대상 충돌이 발생하면 ATBCmder는 파일 덮어쓰기 확인 대화 상자를 표시합니다.
- 병렬 메타데이터 검사:
- 정확한 파일 크기를 단일 바이트까지 비교합니다.
- 수정 날짜와 타임스탬프를 비교합니다. 소스 파일이 최신인지, 이전인지, 크기가 동일한지 눈에 띄게 강조 표시됩니다.
- 현재 항목 결정 버튼:
- 덮어쓰기(
Enter): 충돌하는 대상 파일을 소스 파일로 대체합니다. - 건너뛰기: 기존 대상 파일을 그대로 두고 일괄 전송의 다음 항목으로 계속 진행합니다.
- 취소(
Esc): 이미 전송된 파일을 모두 보존하고 남은 작업을 즉시 중단합니다. - 일괄 및 안전 조치:
- 모두 덮어쓰기: 이 전송 작업에서 충돌하는 모든 후속 파일을 자동으로 덮어씁니다.
- 모두 건너뛰기: 다시 메시지를 표시하지 않고 충돌하는 나머지 모든 파일을 자동으로 건너뜁니다.
- 이름 바꾸기: 복사한 파일을 쓰기 전에 사용자 정의 새 이름을 입력하라는 메시지를 표시합니다.
- 자동 이름 바꾸기: 증분 카운터(예:
build_artifacts_1.zip,build_artifacts_2.zip)를 자동으로 추가하여 수동 개입 없이 두 버전이 나란히 보존되도록 합니다.
복사 대화 상자의 사전 구성된 충돌 정책¶
대규모 자동 배치 작업 또는 무인 백업의 경우 복사/이동 대화 상자의 확장 가능한 옵션 패널 내에서 충돌 동작을 미리 구성할 수 있습니다.
┌──────────────────────────────────────────────────────────────────────────────┐
│ Copy Options Panel │
│ ┌─ Conflict Resolution ─────────────────┐ ┌─ Attributes & Behaviors ──────┐ │
│ │ When file exists: [Ask ▾]│ │ [✔] Check free space │ │
│ │ When directory exists: [Merge ▾]│ │ [✔] Copy date/time │ │
│ │ When cannot set attr: [Skip ▾]│ │ [✔] Copy attributes │ │
│ └───────────────────────────────────────┘ │ [ ] Drop readonly flag │ │
│ ┌─ Filters ─────────────────────────────┐ │ [✔] Copy ownership (POSIX) │ │
│ │ [ ] Exclude empty directories │ │ [✔] Verify after copy: [SHA256]│ │
│ └───────────────────────────────────────┘ └───────────────────────────────┘ │
│ [Save these options as default] │
└──────────────────────────────────────────────────────────────────────────────┘
- 파일이 존재하는 경우:
Ask: 충돌할 때마다 덮어쓰기 대화 상자를 표시합니다(기본값).Overwrite: 기존 파일을 자동으로 덮어씁니다.Skip: 충돌하는 파일을 자동으로 건너뜁니다.Overwrite older: 소스 수정 시간이 더 최근인 경우에만 대상을 덮어씁니다.Rename copied: 복사된 파일에 카운터 접미사(_1,_2)를 추가합니다.Auto-rename target: 기존 대상 파일의 이름을 바꾸고 원래 이름으로 새 파일을 씁니다.- 디렉토리가 존재하는 경우:
Merge: 폴더 내용을 반복적으로 통합합니다. 충돌하지 않는 하위 파일은 기존 폴더에 복사됩니다.Ask/Overwrite/Skip.- 고급 확인 및 속성:
- 여유 공간 확인/예비 공간: 시작하기 전에 소스 바이트를 미리 계산하고 대상 볼륨의 용량이 적절한지 확인합니다.
- 복사 후 확인: 소스 및 작성된 대상 파일 모두에서 암호화 체크섬(
SHA-256,MD5,SHA-1,CRC32)을 계산하여 자동 저장소 손상으로부터 100% 데이터 무결성을 보장합니다. - 링크 따르기: 심볼릭 링크를 포인터 참조로 복사할지 아니면 전체 물리적 복사본으로 역참조할지 제어합니다.
- 날짜/시간 및 소유권 복사: POSIX 생성 날짜, 수정 타임스탬프, 사용자/그룹 소유권 ID를 보존합니다.
7. ⚡ 전문가 팁 및 심층 분석: 고급 파일 시스템 성능¶
듀얼 패널 관리를 마스터한다는 것은 macOS의 기본 UNIX 기반을 이해한다는 것을 의미합니다. 다음은 개발자, 시스템 관리자 및 스토리지 전문가를 위해 설계된 강력한 기능입니다.
7.1 심볼릭 링크 및 하드 링크(cm_SymLink, cm_HardLink)¶
macOS는 Darwin UNIX를 기반으로 구축되었으며 두 가지 고유한 링크 유형을 제공합니다.
Symbolic Link (Symlink):
[ Symlink File ] ──(Path Pointer)──► [ Target File / Directory ]
• Can cross volume boundaries
• Can point to directories
• Breaks if target is moved
Hard Link:
[ Hard Link Entry ] ──┐
├──(Direct Inode Reference)──► [ Raw Disk Blocks ]
[ Original Entry ] ──┘
• Cannot cross filesystem boundaries (same APFS container)
• Files only (no directory hard links on macOS)
• Data persists until all hard links are deleted
심볼릭 링크 생성(cm_SymLink)¶
- 활성 패널에서 하나 이상의 파일/폴더를 강조 표시합니다.
- 메뉴 파일 → 심볼릭 링크 생성...(
cm_SymLink)을 선택합니다. - ATBCmder는 반대쪽 패널에 소스 항목의 절대 경로를 가리키는 심볼릭 링크를 자동으로 생성합니다.
- Symlink는 패널에 고유한
l속성 플래그(예:lrwxr-xr-x)를 표시합니다.
하드 링크 생성(cm_HardLink)¶
- 로컬 APFS/HFS+ 볼륨의 파일을 강조 표시합니다.
- 메뉴 파일 → 하드 링크 생성...(
cm_HardLink)을 선택합니다. - ATBCmder는 정확히 동일한 inode를 공유하는 대상 패널에 추가 디렉토리 항목을 생성합니다.
- 두 파일 중 하나에 기록된 변경 사항은 두 파일 모두에 즉시 반영됩니다. 하나의 파일을 삭제하면 링크 수가 0이 될 때까지 데이터가 삭제되지 않습니다.
Note
링크 경계 제한: 하드 링크는 볼륨 경계를 넘을 수 없으며 네트워크 공유(vfs://)에서 생성될 수 없습니다. 서로 다른 드라이브나 원격 마운트 지점을 연결할 때마다 Symlink를 사용해야 합니다.
7.2 파일 권한 및 속성(Alt+Enter / cm_SetFileProperties)¶
포괄적인 속성 대화 상자를 사용하여 POSIX 파일 속성을 검사하고 수정합니다.
┌────────────────────────────────────────────────────────┐
│ Properties - production_api.py │
│ ┌─ Metadata ─────────────────────────────────────────┐ │
│ │ Full Path: /Users/brain/work/production_api.py │ │
│ │ Size: 84,210 bytes │ │
│ │ Created: 2026-03-12 10:14:22 │ │
│ │ Last Modified: 2026-09-06 13:45:01 │ │
│ │ Last Accessed: 2026-09-06 15:30:10 │ │
│ └────────────────────────────────────────────────────┘ │
│ ┌─ Permissions (UNIX) ───────────────────────────────┐ │
│ │ Octal Mode: [ 755 ] │ │
│ │ ┌─ Owner ──┐ ┌─ Group ──┐ ┌─ Others ─┐ │ │
│ │ │ [✔] Read │ │ [✔] Read │ │ [✔] Read │ │ │
│ │ │ [✔] Write│ │ [ ] Write│ │ [ ] Write│ │ │
│ │ │ [✔] Exec │ │ [✔] Exec │ │ [✔] Exec │ │ │
│ │ └──────────┘ └──────────┘ └──────────┘ │ │
│ └────────────────────────────────────────────────────┘ │
│ [Cancel] [OK (⏎)] │
└────────────────────────────────────────────────────────┘
- 트리거: 파일이나 디렉터리를 강조 표시하고
Alt+Enter(⌥⏎/cm_SetFileProperties)을 누릅니다. - 메타데이터 검토: 전체 파일 경로, 정확한 바이트, 생성 시간(
btime), 수정 시간(mtime) 및 마지막 액세스 시간(atime)을 봅니다. - UNIX 권한 매트릭스:
- 대화형 확인란: 소유자, 그룹 및 기타에 대해 읽기(
r), 쓰기(w) 및 실행(x) 권한을 독립적으로 전환합니다. - 양방향 8진수 입력: 8진수 모드 필드에 8진수를 직접 입력합니다(예: 실행 파일의 경우
755, 표준 문서의 경우644, 개인 SSH 키의 경우600). 확인란은 실시간으로 업데이트되며 그 반대의 경우도 마찬가지입니다. OK(Enter)을 눌러 POSIXchmod을 통해 변경 사항을 적용합니다.
7.3 점유 공간 계산 (cm_CountDirContent / cm_CalculateSpace / Space)¶
기본적으로 파일 관리자는 디렉터리 크기를 <DIR> 또는 --으로 표시합니다. 수백만 개의 파일에 대한 재귀 폴더 크기를 계산하면 파일 시스템 성능이 저하되기 때문입니다. ATBCmder는 즉각적인 주문형 계산을 제공합니다.
- 단일 폴더 크기(
Space/Insert/cm_SelectOrDeselectFile): 폴더에 휴지 상태인 동안Space을 누릅니다. ATBCmder는 백그라운드에서 폴더의 총 재귀 바이트를 계산하고<DIR>을 정확한 크기(예:14.2 GB)로 바꿉니다. - 활성 패널의 모든 폴더(
Alt+Shift+Enter/⌥⇧⏎/cm_CountDirContent): - 현재 패널에 표시되는 모든 디렉토리를 검사합니다.
- 정확한 바이트 합계로 테이블 행을 업데이트합니다.
- 선택한 누적 디렉터리 크기(
Ctrl+L/⌃L/cm_CalculateSpace): - 선택한 폴더에 대한 총 반복 바이트를 누적하고 상태 표시줄에 파일 수, 폴더 수 및 저장 크기를 요약합니다.
7.4 백그라운드 작업 대기열(cm_OperationsPanel)¶
50GB의 대용량 비디오 촬영물을 복사하거나 수십만 개의 작은 소스 코드 파일을 전송할 때 파일 관리자가 정지되어서는 안 됩니다. ATBCMder에는 3-큐 비동기 전송 엔진이 통합되어 있습니다.
┌────────────────────────────────────────────────────────────────────────────────────────┐
│ Background Operations │
│ ┌─ [Queue #1 (Active)] ───────────┬─ [Queue #2 (Idle)] ───┬─ [Queue #3 (Idle)] ──────┐ │
│ │ │ │
│ │ [RUNNING] Copy: 14 items -> /Volumes/BackupDrive/Media │ │
│ │ Current: RED_4K_Clip_0042.r3d (2.4 GB / 8.6 GB) │ │
│ │ Speed: 428.5 MB/s | ETA: 00:01:14 │ │
│ │ [████████████████████████████████░░░░░░░░░░░░░░░░░░] 64% │ │
│ │ │ │
│ │ [QUEUED] Move: 4 items -> /Volumes/BackupDrive/RAW_Audio │ │
│ │ [COMPLETED] Copy: 28 items -> /Users/brain/Projects/Website │ │
│ │ │ │
│ └────────────────────────────────────────────────────────────────────────────────────┘ │
│ [Cancel Task] [Clear Completed] [Close] │
└────────────────────────────────────────────────────────────────────────────────────────┘
왜 세 개의 독립 대기열이 있나요?¶
- 각 대기열 내에서 직렬화됨: 큐 #1 내부의 작업은 엄격한 FIFO 순서에 따라 하나씩 실행됩니다. 이는 기계식 하드 드라이브의 디스크 헤드 스래싱을 방지하고 경합 병목 현상을 방지합니다.
- 큐 간 병렬: 큐 #1, 큐 #2 및 큐 #3은 별도의 백그라운드 스레드(
QThread)에서 동시에 작동합니다. NVMe SSD A를 대상으로 하는 전송을 대기열 #1에 할당하고, 외부 USB 드라이브 B를 대상으로 하는 전송을 대기열 #2에 할당하고, 네트워크 NAS 업로드를 대기열 #3에 할당하여 최대 집계 버스 처리량을 달성할 수 있습니다.
작업을 대기열로 보내기¶
- 활성 패널에서 파일을 선택하고
F5(복사) 또는F6(이동)을 누릅니다. - 시작을 클릭하는 대신 큐 #1에 추가를 클릭합니다(또는 드롭다운 갈매기 모양을 클릭하여 큐 #2 또는 큐 #3 선택).
- 대화 상자가 즉시 사라지고 계속 탐색하고 탐색할 수 있도록 기본 창이 해제됩니다.
대기열 창 관리(cm_OperationsPanel)¶
- 기본 도구 모음에서 ⚡ 대기열 버튼을 클릭하거나 메뉴 명령 → 백그라운드 작업(
cm_OperationsPanel)을 선택합니다. - 실시간 원격 측정: 활성 작업, 현재 전송 중인 파일, 스트리밍 전송 속도(예:
428.5 MB/s) 및 계산된 ETA 카운트다운을 검사합니다. - 색상으로 구분된 상태:
[QUEUED]: 줄을 서서 기다리고 있습니다.[RUNNING]: 적극적으로 데이터를 전송 중입니다.[COMPLETED]: 확인된 바이트 수로 성공적으로 완료되었습니다.[FAILED]: I/O 오류가 발생했습니다(오류 메시지가 인라인으로 표시됨).[CANCELLED]: 사용자가 중단했습니다.- 제어 작업:
- 작업 취소: 선택한 대기 중이거나 실행 중인 전송을 안전하게 종료합니다.
- 완료됨 지우기: 완료, 실패, 취소된 작업을 목록에서 정리합니다.
- 백그라운드 충돌 해결: 백그라운드 작업에 덮어쓰기 충돌이 발생하는 경우 ATBCmder는 다른 동시 작업을 중단하지 않고 문제를 해결할 수 있도록 알림을 표시합니다.
8. 단계별 실제 레시피¶
레시피 1: 체크섬 확인을 통한 안전한 다중 볼륨 백업¶
목표: 가치가 높은 사진 아카이브를 Mac에서 외부 APFS 드라이브로 백업하여 자동 손상을 방지하고 잠재적 중복을 안전하게 해결합니다.
Step 1: Open source in Left Panel (~/Pictures/2026_Photos).
Step 2: Open backup destination in Right Panel (/Volumes/SanDiskPro/Photo_Backup).
Step 3: Press Cmd+A (Select All) in Left Panel.
Step 4: Press F5 (Copy).
Step 5: Click [Options ▼] to expand advanced parameters:
• Set 'When file exists' to: [Auto-rename target]
• Check [✔] Verify after copy: [SHA-256]
• Check [✔] Copy date/time
• Check [✔] Check free space
Step 6: Click [Start].
결과: ATBCmder는 복사 스트림 중에 SHA-256 해시를 계산하고 외부 디스크의 정확한 블록 무결성을 확인하며 사람의 개입 없이 충돌하는 스냅샷에 자동으로 번호를 매깁니다.
레시피 2: 정밀한 스테이징: 와일드카드 선택, 반전 및 Symlink 배포¶
목표: 코드와 컴파일된 아티팩트가 포함된 혼합 저장소에서 컴파일된 .map 및 .log 출력을 무시하고 모든 JavaScript, TypeScript 및 JSON 파일을 선택한 다음 이를 테스트베드 폴더에 심볼릭 링크합니다.
Step 1: Navigate Left Panel to /Users/brain/dev/app/src.
Step 2: Navigate Right Panel to /Users/brain/dev/testbed/lib.
Step 3: Press Num+ (Select Group).
Step 4: Enter pattern: *.ts;*.tsx;*.js;*.json and press Enter.
Step 5: Notice you also matched *.test.ts files. Press Num- (Unmark Group).
Step 6: Enter pattern: *.test.ts and press Enter.
Step 7: Check your status bar: 84 files selected.
Step 8: Select Menu File → Create Symbolic Link... (cm_SymLink).
결과: 84개의 심볼릭 링크가 테스트베드 폴더에 즉시 생성되어 활성 소스 파일을 명확하게 가리킵니다.
레시피 3: 백그라운드 대기열을 사용한 높은 처리량 병렬 수집¶
목표: UI를 잠그거나 카드 리더기의 속도를 늦추지 않고 두 개의 대형 미디어 카메라 카드를 동시에 워크스테이션 RAID로 오프로드합니다.
Step 1: Mount Card A (/Volumes/CFexpress_A) in Left Panel.
Step 2: Select all raw footage (Cmd+A), press F5 (Copy).
Step 3: Click [Add To Queue #1]. Transfer begins streaming in background.
Step 4: Open Card B (/Volumes/SD_Card_B) in Left Panel (Cmd+T for a new tab).
Step 5: Select all audio tracks (Cmd+A), press F5 (Copy).
Step 6: Click the queue dropdown chevron and choose [Queue #2].
Step 7: Press Toolbar ⚡ (cm_OperationsPanel) to watch both queues stream concurrently.
결과: 파일 탐색, 메모 편집 또는 자산 이름 변경을 계속하는 동안 두 카드 모두 전체 하드웨어 버스 포화 상태에서 동시에 수집됩니다.
9. 안전 및 시스템 경고¶
Warning
외부 및 네트워크 드라이브의 영구 삭제:
FAT32, exFAT 또는 NTFS(타사 드라이버 사용)로 포맷된 외부 드라이브와 원격 네트워크 공유(SMB/SFTP)에는 macOS 시스템 .휴지통es 디렉터리가 없는 경우가 많습니다. 이러한 볼륨에서 항목을 삭제하면 ATBCmder는 휴지통을 사용할 수 없다는 경고를 표시합니다. 이 작업을 확인하면 파일이 영구적으로 삭제됩니다. 확인하기 전에 항상 경로 헤더를 다시 확인하세요.
Caution
일괄 작업에서 파일 덮어쓰기: 충돌 대화 상자에서 모두 덮어쓰기를 사용하면 ATBCmder는 해당 전체 작업에 대한 추가 충돌 경고를 억제합니다. 소스 디렉터리에 실수로 중복된 파일 이름이 포함된 경우 기존 대상 파일이 되돌릴 수 없게 대체됩니다. 무인 일괄 복사를 위해 자동 이름 바꾸기 또는 이전 덮어쓰기를 사용해 보세요.
Important
APFS 하드 링크 제한 사항:
하드 링크는 서로 다른 APFS 볼륨, 디스크 파티션 또는 디스크 이미지에 걸쳐 있을 수 없습니다. 두 개의 서로 다른 마운트 지점(예: /Users/... ~ /Volumes/ExternalDrive/...) 사이에 하드 링크를 생성하려고 하면 작업이 실패합니다. 서로 다른 스토리지 볼륨을 연결할 때마다 심볼릭 링크(cm_SymLink)를 사용하세요.
Tip
NVMe 전송 속도 최적화:
ATBCmder는 최신 Apple Silicon 통합 메모리 및 PCIe 4.0/5.0 NVMe SSD에 최적화되어 있습니다. 기본적으로 파일 작업은 고성능 1MB 복사 버퍼(operations.copy_buffer_size)를 활용합니다. 기본 설정 → 파일 작업에서 이 버퍼를 미세 조정하여 고급 10GbE 네트워크 인터페이스 또는 특수 스토리지 어레이와 일치시킬 수 있습니다.
10. 듀얼 매트릭스 키보드 참조 표¶
| 카테고리 | 액션 | macOS 바로가기 | 클래식 키 | 명령 ID | 설명 |
|---|---|---|---|---|---|
| 핵심 파일 작업 | 대상에 복사 | F5 / Fn+F5 |
F5 |
cm_Copy |
선택한 항목을 비활성 패널에 복사합니다. |
| 같은 패널에 복사 | Shift+F5 / ⇧F5 |
Shift+F5 |
cm_CopySamePanel |
이름 바꾸기 프롬프트를 사용하여 활성 패널의 파일을 복제합니다. | |
| 대상으로 이동 | F6 / Fn+F6 |
F6 |
cm_Move |
선택한 항목을 비활성 패널로 이동합니다. | |
| 새 디렉토리 | F7 / Fn+F7 |
F7 |
cm_MkDir |
새 디렉터리 또는 중첩된 트리를 만듭니다. | |
| 휴지통으로 삭제 | F8 / ⌘⌫ |
F8 / Delete |
cm_Delete |
선택한 항목을 macOS 휴지통으로 보냅니다. | |
| 영구 삭제 | Shift+Delete / ⇧⌦ |
Shift+F8 |
cm_Delete |
휴지통 없이 즉시 파일 연결을 해제합니다. | |
| 보안 삭제 | Alt+Delete / ⌥⌦ |
Alt+Delete |
cm_Wipe |
링크를 해제하기 전에 임의의 데이터로 파일을 덮어씁니다. | |
| 이름 바꾸기 | 인라인 빠른 이름 바꾸기 | F2 / Shift+F6 |
Shift+F6 |
cm_RenameOnly |
테이블 행에서 활성 항목의 이름을 직접 바꿉니다. |
| 이름 바꾸기 대화 상자 | 메뉴 파일 | — | cm_Rename |
이름을 바꾸기 위한 모달 텍스트 대화 상자를 엽니다. | |
| 선택 | 모두 선택 | Cmd+A / ⌘A |
Ctrl+A / Ctrl+Num+ |
cm_MarkMarkAll |
모든 파일과 폴더를 선택합니다. |
| 모두 선택 취소 | Cmd+Shift+A / ⇧⌘A |
Ctrl+Shift+A / Ctrl+L |
cm_MarkUnmarkAll |
모든 선택을 지웁니다. | |
| 선택 반전 | Num* / ⌥⌘I |
Num* |
cm_MarkInvert |
모든 항목의 선택 상태를 반전합니다. | |
| 마크 그룹 | Num+ |
Num+ |
cm_MarkPlus |
와일드카드 또는 RegEx 패턴으로 항목을 선택합니다. | |
| 그룹 표시 해제 | Num- |
Num- |
cm_MarkMinus |
와일드카드 패턴으로 항목을 선택 취소합니다. | |
| 동일한 확장자 | Shift+Num+ |
Shift+Num+ |
cm_MarkCurrentExtension |
동일한 파일 확장자를 가진 모든 항목을 선택합니다. | |
| 토글 선택 | Space / Insert |
Insert / Space |
cm_SelectOrDeselectFile |
항목 선택을 전환하고 아래로 내려갑니다. | |
| 클립보드 | 클립보드에 복사 | Cmd+C / ⌘C |
Ctrl+C |
cm_CopyToClipboard |
파일 경로를 시스템 클립보드에 복사합니다. |
| 클립보드로 잘라내기 | Cmd+X / ⌘X |
Ctrl+X |
cm_CutToClipboard |
시스템 클립보드에 대한 파일 경로를 잘라냅니다. | |
| 클립보드 붙여넣기 | Cmd+V / ⌘V |
Ctrl+V |
cm_PasteFromClipboard |
클립보드 파일을 활성 패널에 붙여넣습니다. | |
| 이동으로 붙여넣기 | Cmd+Option+V / ⌥⌘V |
Ctrl+Alt+V |
cm_PasteAsMove |
클립보드 파일을 활성 패널로 이동합니다. | |
| 전체 경로 복사 | 메뉴 편집 | — | cm_CopyFullPath |
절대 UNIX 경로를 클립보드에 복사합니다. | |
| 파일 이름 복사 | 메뉴 편집 | — | cm_CopyFileNameToClip |
파일 이름을 클립보드에 복사합니다. | |
| 링크 및 공간 | 심볼릭 링크 생성 | 메뉴 파일 | — | cm_SymLink |
대상 패널에 심볼릭 링크를 생성합니다. |
| 하드 링크 생성 | 메뉴 파일 | — | cm_HardLink |
대상 패널에 하드 링크를 생성합니다. | |
| 속성 / Chmod | Alt+Enter / ⌥⏎ |
Alt+Enter |
cm_SetFileProperties |
권한, 8진수 chmod 및 타임스탬프를 엽니다. | |
| 공간 계산 | Alt+Shift+Enter / ⌥⇧⏎ |
Alt+Shift+Enter |
cm_CountDirContent |
재귀 디렉터리 크기를 계산합니다(선택한 총계에 대해 Ctrl+L / cm_CalculateSpace). |
|
| 전송 대기열 | 백그라운드 큐 | Toolbar ⚡ |
— | cm_OperationsPanel |
3-큐 백그라운드 전송 모니터를 엽니다. |
이제 일상적인 파일 작업, 선택 기술 및 백그라운드 전송을 익혔습니다.