본문 바로가기

윈도우 일반

파일 병합(Join) 프로그램이 없을 때 간단하게 Copy 명령만으로 분할된 파일들을 하나로 합치는 방법

분할 파일들


위와 같은 분할 파일을 받았는데 마땅한 병합 프로그램이 없을 때가 있습니다. 파일 병합 프로그램이야 워낙에 많고, 대부분 무료 프로그램이기 때문에 간단하게 구해서 사용하면 되긴 합니다. [HJSplit 3.0 - 간단한 파일 분할 병합 프로그램]

하지만 이러한 프로그램들 없이도 간단하게 윈도우의 Copy 명령만으로 분할 파일들을 하나로 합칠 수 있습니다. 예를 들어 위와 같은 파일들을 Copy 명령을 통해 하나로 합친다면 아래와 같이 작업하면 되는 것이죠.

copy /B "T:\Work\Illust.zip.*" "T:\Work\Illust.zip"



분할 파일들은 숫자로 구성된 확장자 부분을 제외하곤 나머지 이름은 모두 같으니 따로 하나씩 + 하실 필요없이 위처럼 * 와일드 카드로 처리하시면 됩니다. 참고로 주의하실 점이라면 반드시 바이너리 파일임을 알려주는 /B 를 붙여주셔야 합니다. 그것 말고는 따로 주의하실 것은 없습니다. 이상입니다. ^^


* 글이 허전한 걸 도저히 참을 수 없어 만들어 본 분할 파일 병합용 Join.cmd 배치 파일

C:\Windows 나 C:\Windows\System32 폴더에 넣고 사용하시면 편하실 껍니다. 사용법은 아래의 이미지를 참고하세요.

@echo off
setlocal


if /i "%1"=="/?" goto Usage
if /i "%~1"=="" goto Usage
set SRC=%~1


if /i "%~2"=="" (
    set DST=%SRC:~0,-4%
) else (
    set DST=%~2
)


if /i not "%3"=="" goto Usage



if not exist "%SRC%" goto Fail1
if exist "%SRC:~0,-4%" goto Fail4
if exist "%SRC%.001" goto Fail3
if exist "%DST%" goto Fail2



copy /B "%SRC:~0,-4%.*" "%DST%"

echo.
echo.
echo 분할 파일들을 %DST% 로 성공적으로 합쳤습니다.
echo.
goto :EOF




:Fail1
echo.
echo %SRC% 분할 시작 파일이 존재하지 않습니다.
goto :EOF




:Fail2
echo.
echo %DST% 파일이 이미 존재합니다. 확인해보세요.
goto :EOF




:Fail3
echo.
echo %SRC% 파일은 분할 파일이 아닙니다. 확인해보세요.
goto :EOF




:Fail4
echo.
echo 분할 파일 경로에 이미 원본 파일이 존재합니다. 확인해보세요.
goto :EOF




:Usage
echo.
echo 배치 파일 사용법
echo.
echo 1^> join "D:\Test\Split.zip.001"
echo 2^> join "D:\Test\Split.zip.001" "E:\Join.zip"
goto :EOF




참고로 ADK 에서 제공되는 copype.cmd 배치 파일이 이런 식으로 만들어져 있죠. 가물거려서 참고하다 보니 스타일도 그쪽을 따라 갔네요. ^^;; 배치 파일에 대해서 첨언하자면 :EOF 는 End of File 이라는 숨겨진 레이블로 배치 파일의 끝을 의미합니다. 배치 파일을 종료할 때 사용할 수 있습니다. 저는 이것보다는 그냥 :EXIT 로 구성해놓고 하는 걸 좋아하죠. 그건 그냥 제 취향입니다. ^^;

이 배치 파일은 생각도 안 했는데 글이 너무 짧아서 급하게 짜봤습니다. 또 여자 사진들로 채울 순 없잖아요. 이것도 병인가봐요. ㅜ_ㅜ 아무튼 잘 사용하세요. ^^

 

 

  • BlogIcon minty_99 2012.11.30 16:55 신고

    엇? 29일 방문자 4700?
    돌아오셨군요. 파워블로거 캐플님.^^ㅎㅎ

    좋은 글 잘 보고 갑니다~ 이제 분할압축 귀찮게 할 필요 없을거 같네요.

    • BlogIcon CApple 2012.11.30 04:02 신고

      ~씨는 글에서 누군가를 지칭하는 3 인칭 대명사로 쓰이는 것 외에, 실제 생활에서 누군가를 부르는 호칭의 용도로 사용할 때는 비슷한 연배나 같은 직급의 동료, 또는 자신보다 어린 아랫사람을 대상으로 상대를 높이를 표현으로 사용됩니다. 연장자나 상사에게 사용하는 것은 예의에 어긋나죠. ^^;;; 실제로 그런 분들께 사용하는 것은 거의 반말급입니다. 선생님께 "ㅇㅇ씨~ 오늘 날씨가 좋네요~" 하면 어색하잖아요. ㅎㅎㅎ ^^;;

      넷상에서는 따로 직급 같은 것이 없고, 서로간의 연배도 불분명하니 일반적으로 님자를 붙여 호칭하는 것이 좋습니다. 혹시나 다른 곳에서도 실수하실까봐 알려드리는 거에요. ^^a

      p.s 그리고 저는 파워 블로거가 아닙니다. ㅎㅎㅎ 무엇보다 제가 그 말을 그닥 좋아하진 않거든요. 저는 그냥 글 쓰는 걸 좋아하는 한 명의 블로거일 뿐입니다. 그냥 방문자 좀 꾸준히 많았으면 하는 소심한 블로거죠. ㅎㅎㅎ

    • BlogIcon minty_99 2012.11.30 16:55 신고

      좋은 지적 감사드립니다^^
      어느 커뮤니티에서 그렇게 쓰길래 그냥 써봤는데 올바르지 않은 표현이었군요..ㅎㅎ;;

    • BlogIcon CApple 2012.11.30 17:39 신고

      커뮤니티의 회원 연령이 비슷하고 그곳의 분위기가 그렇다면 뭐 그곳의 룰이니 크게 문제될 건 없는데요. 문제는 ITcraft 님과 제가 서로의 나이를 알고 있다는 거죠. ㅎㅎㅎ

    • BlogIcon minty_99 2012.12.01 01:53 신고

      알려주셔서 감사합니다~ 앞으로는 좀더 신경 쓰도록 하겠습니다 ^^ :)