adsense_in_article_test


[bash: <<] FTP 자동 접속 리눅스 bash script

리눅스 shell script에서 FTP 서버에 자동으로 접속해서 파일을 올리거나 가져오는 방법이다.

형식은 대략 아래와 같다.

ftp -n [서버 주소] << [구분자]
user [사용자id] [암호]
[ftp 명령어]
quit
[구분자]

예를 들어 사용자 이름 john, 암호 my_password, ftp 서버 192.168.0.10, my_data.dat 파일을 가져오는 경우라면 이렇게 만들면 되겠다.

ftp -n 192.168.0.10 << SCRIPT
  user john my_password
  binary
  get my_data.dat
  quit
SCRIPT

구분자로 사용한 SCRIPT는 들여쓰기(indentation)하면 안된다는 점에 주의하자. 구분자 위쪽의 ftp 명령어 부분은 들여쓰기해도 된다.

ftp에서 -n 옵션은 접속후 자동으로 계정과 암호를 묻지 않도록 하기 위한 것이다. 계정과 암호는 "SCRIPT"라는 구분자로 묶인 부분에서 수동으로 입력하므로 자동접속에서는 -n 옵션이 반드시 포함되어 있어야 한다. 

만약 script 구성상 전체적으로 들여쓰기를 해야 보기가 좋다면 아래와 같이 해 보자. ("<<" 대신 "<<-" 사용)

  ftp -n 192.168.0.10 <<- SCRIPT
    user john my_password
    binary
    get my_data.dat
    quit
  SCRIPT

한가지 유의할 점은, 들여쓰기를 할 때 반드시 탭(tab)을 사용해야 한다는 것이다. 공백(space)으로 들여쓰기를 하면 안 된다.

FTP는 접속정보가 암호화되지 않으므로 보안에 유의하자! 되도록 anonymous 사용을 추천.
 


핑백

  • 반달가면 : [bash: for] 여러 파일에 대한 반복 작업(for loop) 2013-02-20 23:49:15 #

    ... for file_name in ~/-.txtdoecho "[ opening $file_name ]"cat $file_nameecho " "done 자, 그럼 앞에 올렸던 ftp 자동접속 방법을 합쳐서 홈 디렉토리의 txt파일만 골라 특정 서버에 올리는 작업도 쉽게 해 볼 수 있겠다. for file_name in ~/*.txt do ... more

  • 반달가면 : 자동 접속 script 사용할 때 명심할 점 2013-03-07 22:32:58 #

    ... 앞에 게시한 ftp, telnet, ssh 자동접속 script를 사용할 경우 script에 접속 암호가 그대로 표시된다. 그러므로 반드시 해당 파일에 대한 접근권한을 제대로 설정 ... more

  • 반달가면 : [bash: <<. >] FTP 자동접속 및 전송 결과 확인 2015-03-02 22:37:33 #

    ... 일단, 리눅스 shell script에서 ftp 서버에 자동으로 접속하는 법은 예전에 이미 써 두었다. 이전 게시물을 참고하면 된다. 여기로 추가적으로, 자동접속해서 파일을 올리거나 가져오는 과정이 정상적으로 잘 종료되었는지를 확인하는 과정이 필요할 수 있다. 전송 도중에 네트워크 문제로 연결이 끊어 ... more

  • 반달가면 : [bash: curl] curl을 이용한 FTP 자동 접속 2016-08-23 22:59:48 #

    ... curl을 이용한 ftp 자동접속 방법이다. "&lt;&lt;" 기호를 사용하는 방법도 있지만, 스크립트에서 if 조건문을 조합해야 하는 경우 등 상황이나 필요에 따라 curl이 유용할 할 수가 있으므로 정리해 두기로. 만약 cu ... more

덧글

댓글 입력 영역
* 비로그인 덧글의 IP 전체보기를 설정한 이글루입니다.



통계 위젯 (화이트)

23207
3300
2298701

2019 대표이글루_IT

B-Side