Total Commander를 이용하여 파일 합치는 법을 알아보겠습니다.
여러 개의 텍스트나 바이너리 형태의 파일들을 합칠 때 아주 유용합니다.
파일을 합칠 때는 합칠 파일들의 파일명이 오름차순으로 되어 있어야 합니다.
텍스트 파일 세 개를 합쳐보겠습니다.
aaa.txt, bbb.txt, ccc.txt 세 개의 파일이 있습니다.
각 파일의 내용은 다음과 같습니다.
파일명 일괄 변경 기능을 이용하여 파일명을 오름차순이 되게 만들겠습니다.
토탈커맨더 파일명 일괄 변경하기
안드로이드 앱을 개발하면서 구글에서 제공하는 아이콘을 사용할려고 하다보니 자꾸 에러가 떠서 봤더니
구글에서 제공하는 아이콘의 이름이 문제였습니다.
ADT에서 자동생성하는 R 클래스는 이미지의 파일명 그대로 static 멤버 변수를 생성하는데 파일명이 숫자로 시작하다보니
본의 아니게 R 클래스의 static 멤버 변수이름이 숫자로 파일명에 따라 숫자로 생성된 것이 문제였습니다.
자바에서는 멤버변수의 이름은 숫자로 시작할 수가 없습니다.
그래서 아이콘 파일의 이름에서 숫자를 제거하려다 보니 아이콘의 갯수도 많고 해서 파일명을 한꺼번에 변경하는 방법을 찾아보았습니다.
자바 프로그램을 업으로 삼다 보니 프로그램을 작성해서 처리해도 되지만 그때 떠오른 것이
예전 프로그래밍할때 수족처럼 사용했었던 토탈커맨더.
토탈커맨더는 주 기능인 파일탐색기 외에도 편리한 기능들이 많이 있습니다. 파일명 일괄 변경하는 기능 또한 그러한 기능들중에 하나이구요
우선,
변경할 파일이 위치해 있는 디렉토리로 이동후에 변경할 파일명을 모두 선택하고
아래 메뉴를 선택하면 됩니다.
파일명 앞의 숫자가 두자리로 규칙이 정해져 있다면 변경하기가 수월하지만, 그렇다면 [N3-] 이런식으로 기존 파일명의 위치 값을 사용해서 필요한 부분만 변경되는 파일명으로 사용할 수 있습니다.
그런데 변경하려는 파일명에 숫자가 한자리도 있고 두자리도 있으니 조금 까다롭네요.
그런데 우측에 보면 정규식을 쓸 수 있는 기능이 있습니다.
이런 경우에는 정규식을 사용하면 간단하게 처리할 수 있습니다.
정규식 체크박스를 선택한 후
앞부분의 숫자를 제거하기 위해 검색문자에는 [0-9]+_ 를 입력하고 변경문자에는 <삭제> 메뉴를 선택해 줍니다.
[0-9]+_ 의 의미는 0에서 9까지의 숫자가 1번이상(+) 반복되고 숫자 이후에는 _ 가 있다는 정규식입니다.
변경될 새 이름에 깔끔하게 앞 부분의 숫자가 제거된 것을 확인할 수 있습니다.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
이름을 변경할 파일들이 같은 폴더에 있어야만 가능합니다.
일괄 변경할 파일들이 있는 폴더로 이동, 변경할 파일을 모두 선택합니다.
스페이스바를 누르거나, 별도의 설정을 하지 않으신 경우라면 마우스 오른쪽 버튼을 눌러도 됩니다.
파일을 선택했으면 파일 메뉴를 누르고 파일명 일괄 변경 메뉴를 선택합니다. (단축키는 Ctrl+M)
영문이라면 Multi-Rename tool 이라는 메뉴를 선택하셔야 합니다.
지금부터가 중요합니다.
좌측 상단을 보면 변경될 마스크(M): 파일명 이란 칸이 있고, 값은 [N]이라고 되어 있죠.
[N]은 원래의 파일명이고, [N#-#] 형태로 #대신 숫자를 넣으면 원래 파일명의 #번째부터 #번째까지라는 의미가 됩니다.
간단히 예를 들어보죠.
현재 제가 이름을 바꾸려는 파일들은 DSC_xxxx 형태로 되어 있습니다.
이것을 DSC_NEW_xxxx 형태로 바꾸어보겠습니다.
사진에서처럼 파일명 자리에 [N1-3]_NEW[N4-] 라고 입력했습니다.
이걸 풀어서 써보면 [N1-3]은 원래 파일명의 첫번째부터 세번째까지입니다.
모든 파일명의 처음 세글자는 DSC이므로 DSC가 공통으로 들어가게 되죠.
그리고 첫 세글자 뒤에 _NEW를 삽입했습니다.
마지막으로 N[4-]라고 적은 것은 원래 파일명의 4번째부터 끝까지를 의미합니다.
아래쪽 리스트를 보면 변경될 새 이름에 제가 원하는대로 바뀌어 있습니다.
이제 변경 버튼을 누르겠습니다.
리스트는 지워지고 아래쪽에 실행 취소와 결과 보고서 버튼이 활성화되었습니다.
결과 보고서를 눌러보면 아래와 같이 결과가 보여집니다.
만일 내 의도와 다르게 되었다면 실행 취소 버튼을 누르면 작업은 취소됩니다.
닫기 버튼을 눌러 보면 원하는대로 파일명이 변경되어 있습니다.
이 외에도 몇 가지 옵션이 있습니다.
[C] : 정렬된 순서대로 일련번호가 부여됩니다.
화면 오른쪽 카운터 정의에서 일련번호 형태를 바꿀 수 있습니다.
[Y] : 연도를 삽입합니다.
[M] : 월을 삽입합니다.
[D] : 날짜를 삽입합니다.
[h] : 시간
[m] : 분
[s] : 초
여기서 날짜와 시간 은 현재 날짜/시간이 아니라 파일의 날짜/시간입니다.
그럼 이번에는 전체 파일을 선택해서 20091225_161500_1 형태로 날짜_시간_일련번호 형태로 파일명을 변경해 보겠습니다.
마찬가지로 전체 선택후 파일명 일괄변경을 선택합니다.
그리고 파일명에다 [YMD]_[hms]_[C]라고 입력하겠습니다.
그리고 변경을 누르면 아래와 같이 파일명이 변경되었습니다.
이제 파일명에서 특정 문자를 치환하는 방법을 알아보겠습니다.
여기에서는 모든 파일에 공통으로 들어가 있는 "2009"를 "사진"으로 변경해 보겠습니다.
검색후 변경하기 라는 탭이 보이시죠?
검색 문자 란에 2009를 입력하고, 변경 문자 란에는 사진을 입력합니다.
그리고 변경을 누르면 원하는 대로 변경이 되었습니다.
만일 특정 문자를 삭제하고 싶으면 변경 문자 란에 <삭제> 를 입력하면 됩니다.
비슷한 방법으로 확장자도 일괄 변경이 가능하지만, 확장자를 변경할 일은 거의 없기 때문에 설명은 생략합니다.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
TestTxt 뒤에 숫자를 붙여 오름차순이 되게 만들었습니다.
이제 정렬 순서가 가장 빠른 파일을 선택하고(위에서는 TestTxt1.txt) 파일->파일결합을 선택합니다.
대상 파일이 저장될 경로를 설정합니다.
기본적으로 반대쪽 탭에 열린 폴더 이름이 뜨게 되는데, 폴더 트리 버튼을 눌러 변경할 수 있습니다.
폴더 트리 창을 처음 열 때는 디스크 내의 모든 폴더를 검색하므로 시간이 좀 많이 걸립니다.
대신, 한번 검색한 후로는 아주 빠르게 열립니다.
파일 결합이 완료되었습니다.
결합된 파일의 확장자는 out으로 정해져 있습니다.
TestTxt1.out 파일을 선택한 후 F3를 누르면 파일 내용을 볼수 있습니다.
원하는대로 파일이 합쳐졌습니다.
위 예제에서라면 직접 하나하나 복사하는 편이 훨씬 빠르겠지만, 용량이 큰 파일 여러개를 하나로 합쳐야 될 경우 아주 유용하게 쓸 수 있는 기능입니다.