Отправляет email-рассылки с помощью сервиса Sendsay

KirovLUG: пользователи Linux в Вятке

Архивация данных в каталоге с подкаталогами

Архивация данных в каталоге с подкаталогами

Пусть нам нужно архивировать какой-то каталог. Причем архивировать
следующим образом: если внутри каталога встречается подкаталог, то
отдельно нужно заархивировать файлы содержащиеся в подкаталоге, а
затем произвести такое же действие для каждого из вложенных каталогов
этого подкаталога.

Это можно сделать следующим скриптом:
#!/bin/sh

DIR_FROM="lib"
DIR_TO="bak"
TAR_COM="nice -+19 tar -cj"

do_archive() {
CURDIR=$1
echo $CURDIR
#Step 1 - taring files from directory
listing=`find $CURDIR/ -maxdepth 1 -type f -printf " %f"`
mkdir $DIR_TO/$CURDIR
$TAR_COM -f $DIR_TO/$CURDIR/content.tar.bz2 -C $CURDIR $listing
#Step 2 - taring subdirectories
for td in `find $CURDIR/ -maxdepth 1 -type d -printf "%f\n"`; do
if [ `echo $td | awk '{print substr($0,1,1)}'` != "." ]; then
do_archive "$CURDIR/$td"
CURDIR=`echo $CURDIR | sed "/\(.*\)\/\(.*\)/s//\1/"`
fi
done
}
rm -rf $DIR_TO/*
do_archive "$DIR_FROM"
Этот скрипт рекурсивно обходит каталоги и архивирует содержащиеся
в них файлы. И создает копию дерева каталогов с зархивированным
содержимым в другом месте.

Ответить   Sun, 12 Dec 2004 16:02:02 +0300 (#279336)

 

Ответы:

Kolotov Alexandr пишет:

А для чего это может пригодится?

-*Информационный канал Subscribe.Ru
Подписан адрес:
Код этой рассылки: comp.soft.linux.kirovlug
Написать в лист: mailto:comp.soft.linux.kirovlug-list@subscribe.ru
Отписаться: mailto:comp.soft.linux.kirovlug--unsub@subscribe.ru?subject=comp.soft.linux.kirovlug

http://subscribe.ru/ http://subscribe.ru/feedback

Ответить   Loginov Vladimir Mon, 13 Dec 2004 12:31:26 +0300 (#279731)