/
https://42jerrykim.github.io/ _index.md
call로 다른 배치 파일이나 같은 파일 안의 레이블을 서브루틴처럼 호출하는 법과 call 없이 배치 파일을 부르면 돌아오지 않는 함정, 재귀 호출 시 종료 조건이 필수인 이유, call과 파이프·리다이렉션을 함께 쓰면 안 되는 제약을 Microsoft Learn 기준으로 정리했습니다. goto로 배치 파일 안의 레이블로 점프하는 법과 되돌아오지 않는다는 call과의 차이, 특수 레이블 :EOF로 배치를 깔끔하게 종료하는 관용구, 레이블을 찾지 못했을 때 배치가 중단되는 함정을 Microsoft Learn 기준으로 정리했습니다. shift로 %0-%9 배치 매개변수를 한 칸씩 밀어 10개가 넘는 인자를 처리하는 법과 /n으로 특정 위치부터만 미는 법, shift가 되돌릴 수 없다는 제약, %*에는 영향을 주지 않는다는 함정을 Microsoft Learn 기준으로 정리했습니다. pause로 배치 파일 실행을 사용자 입력이 있을 때까지 멈추는 법과 CTRL+C로 배치를 완전히 중단하는 법의 차이, 자동화·예약 작업에서 pause를 넣으면 안 되는 이유를 Microsoft Learn 기준으로 정리했습니다. exit로 CMD 세션이나 배치 스크립트를 종료하고 종료 코드를 반환하는 법과 /b가 있을 때와 없을 때 종료 범위가 완전히 달라지는 차이, exit code가 ERRORLEVEL로 이어지는 관계를 Microsoft Learn 기준으로 정리했습니다. rem으로 배치 파일에 주석을 남기는 법과 리다이렉션·파이프 문자를 주석 줄에 쓸 수 없는 제약, 관행적으로 쓰이는 :: 대체 표기의 위험성, rem/||()를 이용한 여러 줄 주석 트릭을 Microsoft Learn 기준으로 정리했습니다. setlocal과 endlocal로 배치 파일의 환경 변수·현재 디렉터리 변경을 블록 안으로 국한하는 법과, enabledelayedexpansion으로 !변수! 지연 확장을 켜는 법을 Microsoft Learn 기준으로 정리했습니다. break가 현재 Windows에서는 아무 효과가 없는 MS-DOS 호환용 레거시 명령이라는 것과, 아무 일도 하지 않는 특성을 이용해 파일을 만들거나 비우는 break>file 트릭, diskpart의 동명 명령과 헷갈리지 않는 법을 Microsoft Learn 기준으로 정리했습니다. chkdsk로 볼륨의 파일 시스템 오류를 검사·수정하는 법과 /f·/r·/x 옵션의 관계, 사용 중인 볼륨은 다음 재부팅에 예약된다는 동작, 4단계 종료 코드를 Microsoft Learn 기준으로 정리했습니다. chkntfs로 부팅 시 chkdsk 자동 실행 대상 볼륨을 조회·제외·예약하는 법과 /x가 누적되지 않고 덮어쓰기되는 반면 /c는 누적된다는 비대칭, 카운트다운 시간을 0으로 두면 취소가 불가능해지는 함정을 Microsoft Learn 기준으로 정리했습니다.