shell 스크립트로 하위 파일 읽어서 복사하기.

jywoo0526의 이미지

안녕하세요. 초보개발자라 항상 많은 정보를 얻고가지만 여기에 글을 올리는건 처음인것 같습니다.

C++만 공부하다가 처음으로 shell 스크립트를 작성할 일이 생겨서 작업중인데 이렇게 신세계(?) 인줄 몰랐네요~;;

잡솔은 그만하고

제가 지금 하려는 작업은 해당 디렉토리의 하위 파일 구조를 그대로 복사하는 것입니다.

예를들어 sheet/face/brown.png 이런 파일이 있으면

sheet2/face/brown.jpg

뭐 이런식으로 폴더 구조 및 파일을 복사하되 파일만 형식을 변경하는 작업입니다.

ASSET_DIRECTORY="${PROJECT_DIR}/${PRODUCT_NAME}/SpriteAssets"
echo Asset directory is $ASSET_DIRECTORY

for dir in "$ASSET_DIRECTORY"/*/
do
dir=${dir%*/}
echo Creating sprite sheet for \'${dir##*/}\'...

# create hd and sd assets
${TEXTURE_PACKER} --smart-update "$ASSET_DIRECTORY"/${dir##*/} \
--format cocos2d \
--data ${PROJECT_DIR}/${PRODUCT_NAME}/Resources/SpriteSheetsHD/${dir##*/}.plist \
--sheet ${PROJECT_DIR}/${PRODUCT_NAME}/Resources/SpriteSheetsHD/${dir##*/}.pvr.ccz \
done

위의 스크립트를 실행시키면 asset_directory에 있는 하위 파일들이 pvr.ccz 형식으로 변경되는건데,

SpriteSheetsHD 폴더에 모든 파일들이 생성됩니다.

제가 원하는건 SpriteAssets/Face/Eye/.... 이 위치에 파일이 존재한다면

SpriteSheetsHD/Face/Eye/... 처럼 파일 위치를 동일하게 하고 싶은데 말이죠....(저장하려는 최상위 폴더를 제외한....)

고수님들의 답변 부탁드립니다.-_ㅠ

woonuk의 이미지

디렉토리구조만 먼저 처리한 다음 파일 변환 작업을 하면 어떨까요?

참고 : 복잡한 구조의 디렉토리와 파일 중에 디렉토리'만' 복사하기