프로그래밍/셸 스크립트
셸 스크립트를 이용해서 ftp 로 다른 서버에 백업하기
마PD
2013. 5. 9. 22:32
더 간단한 방법
ftp.sh
#!/bin/bash
YEAR=`date +%Y`
ftp -n -i IP주소 <<EOF
user ID PW
cd 받을서버의디렉토리
put 보낼파일의절대경로 받을파일명
bye
EOF
퍼온 방법
ftp 옵션
-i : prompt => yes 를 묻지 않음
-v : 서버로 부터 모든 응답을 보여줌
-n : autologin
스크립트 내용
#!/bin/sh
DAT=`date -d "-1 hours" +%Y%m%d-%H`
#20110401-14 형식으로 출력됨
ftp -in (IP주소) << EOF
user trs trs123 #아이디 비밀번호를 이런식으로 입력함
bin
#prompt -i 옵션이 prompt 임
cd /app/TIG/stat/txt/backup/7001
lcd /log/app/TIG/stat/txt/7001
mget *.$DAT* #여러개의 파일을 한꺼번에 다운받음
bye
EOF
-i : prompt => yes 를 묻지 않음
-v : 서버로 부터 모든 응답을 보여줌
-n : autologin
스크립트 내용
#!/bin/sh
DAT=`date -d "-1 hours" +%Y%m%d-%H`
#20110401-14 형식으로 출력됨
ftp -in (IP주소) << EOF
user trs trs123 #아이디 비밀번호를 이런식으로 입력함
bin
#prompt -i 옵션이 prompt 임
cd /app/TIG/stat/txt/backup/7001
lcd /log/app/TIG/stat/txt/7001
mget *.$DAT* #여러개의 파일을 한꺼번에 다운받음
bye
EOF
파일 2개를 생성한다.
1. ftp.txt
open IP
user ID PW
prompt off
cd 업로드할 디렉토리
put /root/text.txt text.txt
bye
put /root/text.xt text.xt
여기서 받는쪽 파일명을 써주지 않았더니 에러가 났었다. -_-;;
2. ftp.sh
#!/bin/bash
ftp -n -v < ftp.txt
그리고 ftp.sh를 실행하면 파일이 넘어간다. 우오오오.
ftp.sh에서 ftp.txt 의 위치를 절대경로로 하는게 좋을듯....