셸 반자동 화 도수 실현

1267 단어
수요
일부 오프라인 데 이 터 는 정 해진 시간 에 수 동 으로 데이터베이스 에 가 져 와 야 합 니 다.일이 비교적 복잡 하고 시간 이 걸 릴 것 이다.
해결 하 다.
이것 은 반복 되 는 작업 으로 고정된 절차 가 있다.어떻게 든 셸 스 크 립 트 로 이 루어 질 수 있 습 니 다.다음 과정 을 설계 한 셸 스 크 립 트: 1. 가 져 올 데이터 시트 를 csv 형식 으로 바 꾸 고 제 정 된 폴 더 에 넣 습 니 다.2. 스 크 립 트 가 실 행 될 때 먼저 load. log 라 는 도체 로 그 를 저장 하 는 파일 을 비 웁 니 다.3. 순환 을 실행 하고 지정 한 폴 더 아래 의 모든 파일 이름 을 읽 습 니 다.데이터 베 이 스 를 연결 하여 데 이 터 를 가 져 오고 가 져 온 결 과 를 load. log 파일 에 기록 합 니 다.4. 반복 실행 이 끝나 면 해당 로그 파일 을 관계자 에 게 이메일 로 보 냅 니 다.이번 데이터 가 져 오기 가 성 공 했 는 지 모니터링 할 수 있 습 니 다.잘못 찾 을 수 있 습 니 다.5. 디 렉 터 리 아래 파일 을 모두 삭제 합 니 다.
#! /bin/bash
folder="/aaa/data"    #       
ture >Load.log        #      
for file in ${folder}/*;    #       
do
        file_name=`basename $file`
        path=${folder}/$file_name
        (
        db2 connect to databasename user db2_user using mima
        db2 "load from $path of del MODIFIED BY codepage=1386 insert into TABLE(TIME,LID,ITEM_ID,ITEM_NAME,UNIT,AMOUNT,REMARK,SUGGESTION)" >>Load.log    #            
        )
done
 mail -s "load"  [email protected]  < Load.log  #  email
 rm -rf ${folder}/*

스 크 립 트 의 자동 실행 을 원 했 습 니 다.crontab 명령 을 시 도 했 지만 아직 성공 하지 못 했 습 니 다.메 일 설정 참조:http://www.jianshu.com/p/0ef1eaad9870

좋은 웹페이지 즐겨찾기