파일 목록 추출 및 xml 생성

개요

라즈베리파이의 EmulationStation을 사용하여 게임을 즐기고 있는데요.
보통 에뮬롬 파일들은 직접 구해서 넣어야 하지만, 인터넷에 보면 여러가지 한방셋들이 존재합니다.
이때 한방셋의 파일목록을 기반으로 EmulationStation에서 사용되는 gamelist.xml을 만들어서 사용하곤 합니다.
저는 보통 dos 명령어, batch 파일, excel, editplus의 매크로를 사용하여 gamelist.xml 만들고 있습니다.

목록 추출

한방셋 파일들은 하위 디렉토리에 메타정보 및 파일들을 포함하고 있습니다.
일단 파일들의 절대경로를 추출해야 합니다.
이를 위해 한방셋 파일의 최상위 디렉토리에서 다음과 같이 하위 파일들을 추출합니다.

참고 : http://jed00.blog.me/140188844895

파일별 배치 명령 추출

위에서 생성한 dir.txt 파일에는 디렉토리 및 파일 목록이 들어있습니다.
디렉토리별로 롬/이미지/메타파일이 들어 있습니다.
이러한 정보를 배치파일로 출력하기 위해 excel에서 함수를 사용하여 배치파일을 생성하고자 합니다.
메타파일은 type 명령으로 내용을 출력하고, 다른 파일들은 경로를 출력할겁니다.
이러한 구분을 위해 파일경로의 확장자를 추출한 후에 엑셀의 필터링 기능을 사용하여 확장자별 배치파일용 명령을 생성합니다.

엑셀에 위에서 생성한 dir.txt 파일을 넣고, 확장자를 구합니다.
사용한 함수는 아래와 같습니다.

참고 : https://www.extendoffice.com/ko/documents/excel/3091-excel-extract-extension-from-filename.html

확장자별로 배치파일에서 사용될 명령어를 다르게 생성합니다.

최종 생성된 명령들을 복사하여 에디터네 넣어 result.bat 파일을 만들어서 실행합니다.
bat 파일의 출력을 redirect를 사용하여 result.txt 파일로 생성합니다.

gamelist.xml 생성

result.txt의 정보를 사용하여 gamelist.xml을 생성할 수 있습니다.
저는 editplus의 메크로 기능을 주로 사용합니다.
매크로를 사용하면 키보드 입력을 녹화한 후 필요한 횟수만큼 반복할 수 있습니다.
result.txt 파일은 어느정도 정형화된 데이터이므로 반복작업을 수행할 수 있습니다.
글로 설명하기 애매해서 유사한 동영상을 링크합니다.

참고 : https://www.youtube.com/watch?v=DKvq5Nn7aU8

CC BY-NC-ND 2.0 KR

이 저작물은 크리에이티브 커먼즈 저작자표시-비영리-변경금지 2.0 대한민국 라이선스에 따라 이용할 수 있습니다. 크리에이티브 커먼즈 라이선스

저작권과 관련된 파일요청 및 작업요청을 받지 않습니다.

댓글 남기기