2016-09-29 5 views
0

カレントディレクトリ内のすべてのフォルダを圧縮しようとしています。現在のフォルダ内のすべてのディレクトリを圧縮する

結果は、各フォルダがアーカイブになるはずです。つまり、アーカイブはフォルダと同じ構造にする必要があります。

この

は私が書いたスクリプトです:

find ~/data_archive_dir \ 
-maxdepth 1 \ 
-type d \ 
! -iname "*.zip" \ 
! -iname "*.bz2" \ 
! -iname "*.gz" \ 
-exec zip -r "{}" "{}" \; 

が、それらの内部フルパスで古いフォルダと同じ名前のアーカイブとファイルを取得します。私が間違っていることは何ですか?

答えて

0
for l_dir in ~/data_archive_dir/*/ 
do 
    pushd ~/data_archive_dir/ 
    zip -r $(basename "${l_dir}").zip $(basename "${l_dir}") 
    popd 
    rm -r "${l_dir}" 
done 

これは私が書いたものです。

関連する問題