TV 물만 들어오는 서버를 관리 하고 있다.
서버의 규칙상 온전한 릴리즈가 아닌 압축이 풀린 상태로 받고 있었다.
허나 압축을 풀어서 올리는게 너무나도 힘들다는 유저들의 의견때문에 하나의 스크립을 만들어 보게 되었다.
project-zs 의 complete script 에 넣어 보았지만 작동하지 않았다.
어떻게 사용하는 것인지 내가 모르는 것일 수도 있다 -_-;;

그리하여 고안한 방법..
crontab 을 이용하여 3분마다 서버를 체킹
완료된 릴리즈가 있다면 그 릴리즈의 nfo 를 옮기고 rar 압축을 풀기 시작
완료 되면 avi 를 nfo 을 옮겨둔 자리로 옮긴후
원본 폴더 삭제..
이러한 방법을 생각했다.
아래는 그 source 이다.

#!/bin/sh
# Manu's rar autoextract shell program..
# this is not stable.
# so it will makes some buggy. heh.
# bug reporting to manu (manu@manuz.net)
# homepage : http://Manuz.NET (only for KOREAN)
locate -U /glftpd/site/ -e /glftpd/site/+Manu/,/glftpd/site/+Site/,/glftpd/site/Request/
COMPLETEFILE="$(locate -n 1 *\ COMPLETE\ * )"
if [ "$COMPLETEFILE" ]; then
EXTRACTFOLDER="$(locate -n 1 *\ COMPLETE\ * | sed -e "s/\[ds\].*//")"
REALNAME="$(locate -n 1 *\ COMPLETE\ * | sed -e "s/\/glftpd\/site\///g" | sed -e "s/\[ds\].*//")"
echo `date "+%a %b %e %T %Y"` AUTOEXTRACT: \""start extracting...\"" >> /glftpd/ftp-data/logs/glftpd.log
/bin/rm -f "$COMPLETEFILE"
cd "$EXTRACTFOLDER"
/bin/mv -f *.nfo ../
/usr/local/bin/rar e "$EXTRACTFOLDER/*.rar" "$EXTRACTFOLDER/../"
cd ..
rm -rf "$EXTRACTFOLDER"
echo `date "+%a %b %e %T %Y"` AUTOEXTRACT: \""extracting $REALNAME has completed... :P manu...\"" >> /glftpd/ftp-data/logs/glftpd.log
fi



사전준비
* rar 패키지가 깔려 있어야 한다.

설치방법
1. 위의 소스를 복사하여 auto_extract.sh 로 서버에 저장

가장 중요한 것이 있다.
locate -U /glftpd/site/ -e /glftpd/site/+Manu/,/glftpd/site/+Site/,/glftpd/site/Request/
locate -U 기본검색폴더 -e 제외할폴더,제외할폴더,제외할폴더
제외할 폴더는 띄워쓰기 없이 , 로 구분한다.

sed -e "s/\[ds\].*//" 여기서 이부분은 Project-zs 의 컴플릿태그이다 알맞게 수정하자

2. chmod +x auto_extract.sh 를 하여 실행 가능하게 permission 수정
3. 파일을 /glftpd/bin 폴더로 이동
4. dZSbot.tcl 파일을 수정
set msgtypes(DEFAULT) 의 끝에 AUTOEXTRACT 삽입
------------------------------------------------------
set chanlist(AUTOEXTRACT) "#channel"
set disable(AUTOEXTRACT) 0
set variables(AUTOEXTRACT) "%r"
set announce(AUTOEXTRACT) "\002AUTOEXTRACT...\002 - %r
------------------------------------------------------

위의 4줄을 추가 한다.
5. crontab -e 를 친후
*/3 * * * * /glftpd/bin/auto_extract.sh >/dev/null

를 추가한다. */3 은 3분마다 한번씩 실행 하게 한다.

PS. 이 스크립에 대한 피드백은 꼬리글로 받습니다 :P...
2004/09/24 21:42 2004/09/24 21:42
Posted by 마누
트랙백 0 : 댓글 6 댓글을 작성하시려면 클릭하세요

트랙백 보낼 주소 : http://manuz.com/trackback/48


행복합니다^^
행복합니다. 김형원이 운영하는 블로그 입니다. 제가 쓴 글과 영상들이 있고 웹관련 정보들이 있습니다.

카테고리

전체 (159)
Life Story.. (46)
Love Story.. (2)
Meditation with Life (41)
Web Accesiblity (1)
Writing (2)
Meditation (15)
WEB (11)
IT (31)
Movie Clip (UCC) (8)

글 보관함

달력

«   2012/02   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29      
Total : 300107
Today : 32 Yesterday : 223