질문&답변
클라우드/리눅스에 관한 질문과 답변을 주고 받는 곳입니다.
리눅스 분류

쉘스크립트로 FTP get하려는데 안되네요..도와주세요 ㅠㅠ

작성자 정보

  • 김담 작성
  • 작성일

컨텐츠 정보

본문

#!/bin/bash

NewwDate=`date +%Y"-"%m"-"%d`
NowTime=`date +%H":"%M":"%S`
StartTime=$NowDate" "$NowTime

DATA_PATH='/home/CheckLogFile/'
ID='aaa'
PASS='asdf'
DATE=`date +'%y%m%d'`

{
         echo user $ID $PASS
         echo cd CheckLog_Netmarble/
         echo lcd $DATA_PATH
         echo bin
         echo passive
         echo get 'LGOIN_'$DATE'.txt'
         echo get 'ARAD_'$DATE'.txt'
         echo get 'SULI_'$DATE'.txt'
         echo get 'TANT_'$DATE'.txt'
         echo bye
} | ftp -in ip생략

 

SERVER=(LOGIN, ARAD, SULI, TANT)
MailList=(생략)
for ((i=0; i<4; i++));
do
        for ((j=0; j<3; j++));
        do
                SnedMail=`/bin/mail -N -s  $DATE' '$SERVER[i]' MASTER' 'check log  '$MailList[j]' < '$SERVER[i]'_'$DATE'.txt'`
                echo $SendMail
                echo "Send Mail $SERVER[i] MASTER Check log "
        done
done





위에는 쉘스크립트로 ftp에서 get하려고 만든 스크립트 입니다.

ftp에 있는 파일을 가져와서 메일로 다시 보내야 하는데..

ftp에 바로 접속해서 get하면 정상적으로 작동 합니다.

그런데 스크립트를 실행 하면

[root@DkAdmin250 Script]# sh ./CheckLog_FTP.sh
Please login with USER and PASS.
Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Local directory now /home/CheckLogFile
Passive mode off.
Failed to open file.


이렇게 마지막에 Failed to open file 이라고 뜨면서 스크립트를 빠져나오지 못하네요..

그래서 ctrl + c로 빠져 나오면

(Interrupt -- one more to kill letter)

이런 문구가 뜨면서 종료되구요

근데 ftp에서 파일은 가져오네요...?

파일을 가져온 후에 메일까지 보내져야 되는데 제대로 돌아가지 않으니..

이것저것 뭐라도 조언 부탁드립니다.


 

관련자료

댓글 1

눈여울님의 댓글

  • 눈여울
  • 작성일
bash는 대화형 진행이 불가 합니다

lftpget, curl, wget 을 이용하시거나  스크립팅이 필요하시가면 expect를 이용해보세요

공지사항


뉴스광장


  • 현재 회원수 :  60,285 명
  • 현재 강좌수 :  36,929 개
  • 현재 접속자 :  347 명