FTP로 원격 디렉토리 리스트를 가져오는 것을 해보고 싶었다.
무엇보다 스스로의 성취감도 중요하겠지만,
각 스크립트 언어별로 얼마나 다른지 확인해 보고 싶기도 했다.

// groovy script

import sun.net.ftp.FtpClient
import java.io.BufferedReader
import java.io.inputStreamReader

def getList(is){
 br = new BufferedReader(new InputStreamReader(is))
 while ( (result = br.readLine()) !=  null) list += result + "\r\n"
 return list
}

ftp = new FtpClient()
ftp.openServer('serverurl')
ftp.login('loginid','password')
ftp.cd('/home/loginid/test')
is = ftp.list()
println getList(is)


/* Javascript(Rhino) */

importClass(Pacakges.sun.net.ftp.FtpClient)
importClass(java.io.BufferedReader)
importClass(java.io.InputStreamReader)

function getList(is){
 var result = 0;
 var list = '';
 var br = new BufferedReader(new InputStreamReader(is));
 while( (result = br.readLine()) != null) list += result + "\r\n";
 return list;
}

var ftp = new FtpClient();
ftp.openServer('serverurl');
ftp.login('loginid','password');
ftp.cd('/home/loginid/test');
is = ftp.list();
print( getList(is));


// ruby script

require 'net/ftp'

ftp = Net:FTP.new('serverurl','loginid','password')
ftp.chdir('/home/loginid/test')
list = ftp.list()
puts list


전체적으로 보면 Ruby가 훨씬 간결하고 직관적인 것을 알 수가 있었다.
또한, Java 기반인 두 스크립트(Javascript, Groovy)는 사용방법이 같아서 소스가 거의 같았다.
(내가 아직 두 스크립트를 간결하게 사용하는 법에 미숙하다)

스크립트는 컴파일 안해도 되고 바로 결과 확인이 되니까 재미있는 것 같다. :)

댓글을 달아 주세요

prototype.js를 이용한 Grid 툴킷

JavaScript | 2008. 8. 28. 00:24 | Posted by G.N.Jeong J.#
prototype.js를 이용한 그리드 툴킷
간단하게 쓸 수 있을 것 같다.
http://www.millstream.com.au/view/code/tablekit/

댓글을 달아 주세요

JavaScript Date Util

JavaScript | 2008. 6. 30. 00:34 | Posted by G.N.Jeong J.#



var date0 = new Date();
date0.setFullYear('2008');
date0.setRealMonth('8');
date0.setDate('4');
alert(date0.formatString('Y-M-D'));			// 2008-08-04
alert(date0.formatString('Y년 m월 d일'));		// 2008년 8월 4일

var date1 = new Date();
date1.setFullYear('2008');
date1.setRealMonth('9');
date1.setDate('8');

alert(DateUtil.diffDay(date0, date1));		// 35

댓글을 달아 주세요

  1. mycodeer 2009.09.18 16:50  댓글주소  수정/삭제  댓글쓰기

    멋진 코드군요.
    가져다 사용해도 될까요?

  2. mycodeer 2009.10.28 13:40  댓글주소  수정/삭제  댓글쓰기

    안녕하세요. ^^;
    위 코드를 보다가 의문 스러운게 있어서요.
    getDateByDateOfYear 이 함수가 주어진 인자가 해당 연월의 날수보다 많을때
    연월의 날수 에서 뺀값을 반환 하는것인가요?
    그리고 var month = 0; 이 부분을 var month = this.getMonth(); 이렇게 바꿔야 하는게 아닌가 해서 문의 드립니다.

  3. 2012.06.07 22:00  댓글주소  수정/삭제  댓글쓰기

    비밀댓글입니다