Skip to content
조회 수 20523 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

[DOS모드] ftp 자동 전송기능


참고 : http://urin79.com/index.php?mid=blog&page=106&document_srl=10805399




FTP폴더를 드라이브처럼 사용할 수 있는 프로그램도 있지만,




굳이 드라이브를 만들지 않고 데이터를 전송할 수도 있다.






ftp_script.txt  라는 파일을 만들고 거기에 수행할 작업들을 입력한다.


 


username   - 로그인 아이디
password    - 로그인 패스워드
cd /pub         - FTP 접속 후 이동할 폴더위치
bin                - BIN모드에서의 실행
put file.exe   - FILE.EXE를 FTP서버에 전송시킨다. (*.* - 모든파일 전송)
quit                - 종료


 


 


명령행에서 다음과 같이 실행하면 파일에 있는 내용을 불러와 실행한다.


C:\>ftp -i -s:ftp_script.txt 192.168.1.1 > ftp.log 




그럼 특정 폴더의 데이타를 전송시키려면,,,




특정폴더 : D:\자료백업\*.*




BACKUP.BAT 파일을 만든다.




COPY CON BACKUP.BAT


ECHO OFF


D:


CD \자료백업


ftp -i -s:ftp_script.txt 192.168.1.1 > ftp.log 


^Z




하면 BACKUP.BAT 파일이 만들어 진다.




도스화면에서 BACKUP 이라고 입력하면, D:\자료백업 폴더로 이동 후 데이타를 전송시킨다.


전송내용을 보려면 FTP.LOG 파일을 열어보면 된다.















제일 핵심은 FTP 접근을 자동화하는 것,


그리고 결과를 어떻게 받아올것인가 였습니다.


 


이전에도 도스 스크립트를 작성해본 경험이 있었기때문에,


이곳저곳 간단하게 참조하여 짜집기 하여 구현했는데,


 


FTP호출을 자동화 하는 방법은 윈도우의 FTP 커맨드에서 제공하는 -s 옵션을 활용했습니다.


물론 해당 스크립트 파일은 환경변수를 사용할수 없는 정적 파일 형태만을 지원합니다.


따라서 동적으로 파일을 만드는 과정도 추가했습니다.


 


아래에 간단한 스크립트 조각에 대한 설명을 기록합니다.


 


1. 작업에 필요한 정보를 정의


  1. set FTP_CMD=c:\work\i_love_it.txt 
  2. set FTP_IP=192.168.0.9
  3. set FTP_ID=ftpuser
  4. set FTP_PWD=yourpwd

첫번째 FTP_CMD는 FTP호출에 사용할 스크립트 파일명을 정의했습다.


나머지는 ftp 접속 ip, id, password를 의미합니다.


 


2. 오늘 날짜를 얻기


  1. FOR /F "TOKENS=2" %%i IN ('date /t') DO SET FullDate=%%i
  2. SET Month=%date:~5,2%
  3. SET Day=%date:~8,2%
  4. SET Year=%date:~0,4%
  5. set TODAY=%Year%%Month%%Day%

좀더 쉬운 방법도 있겠지만 여기서는 yyyymmdd 형태의 값을 만들기위해 웹에서 돌아다니는 코드를 이용했습니다.


 


3. 로그파일명 정의


  1. set LOG_FILE=c:\work\todo-list-%TODAY%.log

FTP 결과를 로그에 저장하기 위해 정의합니다.


 


4. 스크립트 파일 만들기 


  1. echo open %FTP_IP%>> %FTP_CMD%
  2. echo user %FTP_ID%>> %FTP_CMD%
  3. echo %FTP_PWD%>> %FTP_CMD%
  4. echo cd "pubs/working">> %FTP_CMD%
  5. echo dir %TODAY% %LOG_FILE%>> %FTP_CMD%
  6. echo bye>> %FTP_CMD%

FTP용 스크립트 명령을 파일에 저장하는 작업입니다.


먼저 FTP서버에 접속하여 로그인하고 pubs/working 위치로 간다음


%TODAY% 경로 (ex. 20091022) 를 리스팅 하여 %LOG_FILE%에 저장하고 있습니다. 


 


5. ftp 스크립트 실행하기 


  1. ftp -n -v -s:%FTP_CMD%

ftp를 스크립트로 실행합니다.


 


6. 결과처리


  1. findstr /I /C:"doc" %LOG_FILE%> null
  2. if not errorlevel 1 goto exist_job
  3. echo ### Congratulations, We can play now! :D ###
  4. goto end
  5. :exist_job
  6. echo ### sorry, we have work. T.T ###
  7. notepad %LOG_FILE%
  8. :end

로그파일 내에 문서(doc)파일 목록이 있으면 notepad로 목록을 보여주고,


없으면 콘솔메세지만 뿌리고 종료처리 합니다.


 


물론.. FTP 실행시 아예 있으면 파일을 가져오는 것도 좋은 방법입니다.


마지막으로 윈도우 스케줄러에 걸어놓으면 끝.





http://cybercafe.tistory.com/83




http://sungah.egloos.com/3252376












로그인 후 댓글쓰기가 가능합니다.

?

List of Articles
번호 분류 제목 날짜 조회 수
117 파이썬 키움 증권 API를 이용하여 주식 자동 매매 프로그램 개발 3 2021.09.07 3902
116 파이썬 키움증권 OpenAPI 당황스러움 file 2021.09.06 1747
115 파이썬 키움증권 openAPI 지정가분할매수주문.py 2021.09.13 3524
114 컴퓨터잡담 타지역 농지매입 2021.06.01 1108
113 컴퓨터잡담 탐색기 다른 이름으로 저장하기 저장위치 즐겨찾기 폴더 변경하기 2 file 2012.03.02 5293
112 컴퓨터잡담 탐색기 속성 변경하여 특정 폴더 열기 3 2011.12.18 6833
111 WindowsTip 탐색기로 ftp 폴더 바로열기 file 2013.12.03 19665
110 컴퓨터잡담 테블릿을 세컨트모니터로??? 2023.04.26 37981
109 컴퓨터잡담 텍스트를 한글로 읽어주는 사이트 1 file 2013.04.18 9527
108 컴퓨터잡담 토렌트 다운로드한 파일이 실행되지 않을경우 2010.11.11 5406
107 컴퓨터잡담 툴바제작사이트 1 2011.09.15 4055
106 컴퓨터잡담 트랜지스터의 종류와 특정 2013.10.12 28525
105 컴퓨터잡담 트위터 개발하기 3 2010.04.26 13817
104 컴퓨터잡담 특정 파일을 제외한 현재 디렉토리 내의 모든 파일을 삭제하는 배치파일 2022.07.14 32725
103 Server 특정범위 안의 모든 문자 수 찾기 3 2012.06.19 7587
102 컴퓨터잡담 특정사이트 접속 느려질 경우 대처방법 1 2011.08.09 4552
101 컴퓨터잡담 티맥스 앞날이 깜깜 2009.07.08 17160
100 컴퓨터잡담 티맥스 윈도우가 살아남는 방법 5 1 2009.07.24 22700
99 컴퓨터잡담 티맥스OS 무료배포도 판매 수익의 세배이상 가능하다 2 2009.07.26 24566
98 파이썬 파이썬 any, all 사용하기(배열데이터 안에 값이 하나라도 있는지 또는 모두 있는지 비교) 2021.09.11 1956
Board Pagination Prev 1 ... 39 40 41 42 43 ... 46 Next
/ 46

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소