Skryp bash, czy to jest poprawnie?
: 25 lutego 2011, 12:26
Witam,
napisałem skrypt do automatycznej archiwizacji pewnego folderu na płytach i chciałbym go wrzucić w crona do tygodniowego wykonania. Jako, że skryptów jako takich jeszcze nie pisałem prosiłbym o zerknięcie i wytknięcie mi błędów, coby w przyszłości było porządnie.
Szczerze nie uruchamiałem go w całości, tylko fragmentami bo wiem, że ma jeszcze co najmniej dwa błędy. Pierwszy opisałem http://debian.linux.pl/threads/19149-ta ... post134428 a drugi to taki że nagrywarka nie czeka aż ktoś jej wsunie płytę tylko od razu sprawdza że nie ma odpowiedniej i jedzie dalej. Dobrze by było gdyby jednak czekała, bo nikt nie będzie stał nad serwerem i czekał na wysunięcie klapki...
napisałem skrypt do automatycznej archiwizacji pewnego folderu na płytach i chciałbym go wrzucić w crona do tygodniowego wykonania. Jako, że skryptów jako takich jeszcze nie pisałem prosiłbym o zerknięcie i wytknięcie mi błędów, coby w przyszłości było porządnie.
Kod: Zaznacz cały
#!/bin/sh
if
test -e /home/backup/projekty_temp
then
echo "Katalog istnieje, kontynuowanie spowoduje wyczyszczenie katalogu. Przerwać?: y or n"
read decyzja
if
decyzja = 'y'
then
echo "Przerywam skrypt."
exit
fi
echo "Czyszczę katalog."
rm -R /home/backup/projekty_temp/*
mkdir /home/backup/projekty_temp/projekty
else
echo "Tworzę katalog."
mkdir /home/backup/projekty_temp/
mkdir /home/backup/projekty_temp/projekty
fi
rsync -rv /home/tomasz/Projekty /home/backup/projekty_temp/projekty --progress
tar -cvzf /dev/stdout /home/backup/projekty_temp/projekty | split -d -b 4600m - /home/backup/projekty_temp/file.tgz.
rm -R /home/backup/projekty_temp/projekty
ile=`ls /home/backup/projekty_temp | wc -l`
i=0
for ((i=0;i<$ile;i++))
do
echo $i
# mkisofs -J -r -v -V nagrania -o /home/backup/projekty_tmp/nagrania.iso /home/backup/projekty_tmp/file.tgz.0$i
# cdrecord -v -eject dev=/dev/scd0 /home/nagrania.iso
# rm /home/tomasz/nagrania.iso
# i=$(($i+1))
done