[BASH] 공백문자(space)가 포함된 파일패스 list 처리

CS/Shell/Perl/Python 2010. 8. 12. 14:09
FILES=$(find path -name "*.gz")
으로 파일을 찾아 루프로 넘기는 경우

for file in "$FILES"
do
    ...
done

FILES에 공백 문자가 포함된 경우("/root/some path/somefile")
file에는 /root/some 과 path/somefile 이 넘어오게 된다.

이런 경우, find는 \n으로 각 파일패스를 구분하므로, 구분자를 바꾸어 준다.

FILES=$(find path -name "*.gz")
IFS=$'\n"
for file in "$FILES"
do
    ...
done


: