Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- completed_dir=kazkur
- convert_dir=kazkurkitur
- db_user=user
- db_pass=pass
- db_db=database
- db_socket=socket
- # Ir taip toliau
- [ -f /var/lock/$0.lock ] && { echo "already running" >&2; exit 1; }
- touch /var/lock/$0.lock || { echo "can't create a lock" >&2; exit 1; }
- # realiam gyvenime dar gali pasitailyti situaciju kai vienas run'as nespeja sukonvertuoti visko per intervala ir pasileidzia konkuruojantis procesas, tai pridejau run lock'inima ir tikrinima pradzioj. Jei negali susikurti lock'o (permissions, missing dir, whatever) irgi turi fail'inti - pasekmes kitaip gali buti liudnesnes. (Tomas) Labai liuks. Idealu butu loga laikyti /home/sites/djscene/logs/ folderyje.
- cd $convert_dir
- for file in `ls *.extenssion`; do # dirbam su kiekvienu rastu failu turinciu tinkama pletini
- id=`echo $file | grep -Eo "[0-9]+\.[^\.]+$" | grep -Eo "^[0-9]+"` # kazkokie kreivi pipe su kazkokiais regexp'ais issizvejot id - siuo atveju turetu pasiimti skaiciu esanti pries paskutini taska eilutej - (Tomas) butent taip ir reikia - skaicius pries pasktuini taska.
- mysql -u $db_user -p $db_pass -S $db_socket -D $db_db -e "UPDATE `dj_media` SET `media_file_status` = 'process' WHERE `media_id` = $id" || { echo "vajezus marija" >&2; rm -f $file; continue; } # nesekmes atveju atspausdinam kazka i std error ( visas scripto outputas gali buti redirektintas i koki log'a) ir tesiam su kitu failu. (Tomas) Cia reiktu irasius loga istrinti ta kreiva faila ...
- nice -n 19 lame -h $convert_dir/$file $completed_dir/$file # encodinam. (Tomas) butent tokius parametrus ir tokia komanda reik vykdyti. priklausomai nuo failo dydzio ji uztruknka nuo 5 iki 10 min
- mysql -u $db_user -p $db_pass -S $db_socket -D $db_db -e "UPDATE `dj_media` SET `media_file_status` = 'complete' WHERE `media_id` = $id" && rm -f $file # sekmes atveju pavalom faila. (Tomas) OK
- done
- rm -f /var/lock/$0.lock # nuvalom lock'a
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement