메뉴 닫기

디렉토리아래에 있는 모든 zip 파일을 풀고 싶어요.

어떤 디렉토리에 zip 파일이 여기저기 있는데 다 풀고 싶다고 했다.
그래서 어떻게 하면 좋을까를 질문을 facebook에서 보았다.

그래서 배치파일을 하나 작성해 보았다. 그러는 사이 질문이 사라졌다.
아쉬어 그냥 IDCHOWTO에 이글을 남겨요.

cat recur-unzip.sh 
#!/bin/bash

getRand
{
    RandSeq=$(openssl -hex -rand 10  )
   if [ -e $1.$RandSeq ] ; then 
    getRand $1
   else
    echo $1.$RandSeq
   fi
}


getUnzippedDirectory
{
    unzipped=$(basename $1 .zip)
    if [  -e $unzipped ] ; then
        getRand  $unzipped
    fi 
}

main_loop
{
    find $root_dir -maxdepth 1  -name '*.zip' | while read f ; do 
    unzipped=$(getUnzippedDirectory $f)
    unzip -d $unzipped $f 
    done

    find $root_dir -maxdepth 1 -type d | while read f ; do 
    main_loop $f
    done

}

if [  -d "$1" ] ; then 
    main_loop $1
else
    echo -n example:
    echo $0 $(pwd)
fi
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x