날짜: 1996-05-06 | 글쓴이: 도아 | 21102 번 | 프린트 | 메일로보내기

펄 응용 - 제 6강 Win32::Internet 사용자 길잡이 - 계속


FTP 함수 일반적 설명 모든 메소드는 메소드를 호출하기 전에 다음과 같은 행을 가지고 있는 것으로 가정한다:
use Win32::Internet;
$INET = new Win32::Internet();
$INET->FTP($FTP, "hostname", "username", "password");
다른 말로하면 $INET라는 인터넷 개체와 $FTP라는 열려진 FTP 세션을 가지고 있는 것으로 가정한다. 보다 자세한 정보는 newFTP를 본다. 메소드
Ascii
Asc
FTP 세션에대해 ASCII 전송모드를 설정한다. 이 것은 이어지는 Get 함수에 적용될 것이다. 또한 BinaryMode 함수를 본다. 예:
$FTP->Ascii();
Binary
Bin
FTP 세션에대해 2진 전송모드를 설정한다. 이 것은 이어지는 Get 함수에 적용될 것이다. 또한 AsciiMode 함수를 본다. 예:
$FTP->Binary();
Cd path
Cwd path
Chdir path
원격 FTP 호스트의 현재 디렉토리를 변경한다. 일반적으로 path를 리턴하며, 오류 발생시 undef을 리턴한다. 예:
$FTP->Cd("/pub");
Delete file
Del file
웍격 FTP 호스트의 파일을 삭제한다. 오류 발생시 undef를 리턴한다. 예:
$FTP->Delete("110-i86.zip");
Get remote, [local, overwrite, flags, context]
remote FTP 서버의 파일을 가져와서 local에 저장한다. 만약 local이 지정되지 않으면 remote와 같은 이름이 사용된다. 오류가 발생하면 undef가 리턴된다. 매개변수와 값은 다음과 같다:
매개변수 의미 기본값
remote 웍격 FTP 서버의 파일명. 없음
local 생성할 로칼 파일명. remote
overwrite "0"이면 파일이 존재하는 경우 local을 겹처쓴다. "0" 이외의 값을 지정하면, 로칼에 파일이 존재하는 경우, 동작은 실패한다. 0
flags 함수의 동작에 영향을 미치는 추가적인 플랙 없음
context 비동기인경우 이 동작을 확인하는 번호. 비동기 동작에대한 보다 자세한 사항은 SetStatusCallbackGetStatusCallback을 본다. 없음
이들 매개변수에대한 보다 자세한 사항은 Microsoft Win32 인터넷 함수를 참조한다. 예:
$FTP->Get("110-i86.zip");
$FTP->Get("/pub/perl/languages/CPAN/00index.htm", "CPAN_index.htm");
List [pattern, listmode]
Ls [pattern, listmode]
Dir [pattern, listmode]
디렉토리의 파일의 목록, 즉 주어진 pattern(생략하는 경우 "*.*"로 간주한다)과 일치하는 파일의 목록을 리턴한다. 리턴된 목록의 내용은 listmode 매개변수에의존하며, listmode 매개변수는 다음과 같은 값을 갖는다:
  • listmode=1(또는 생략) 파일의 이름을 포함하는 목록 예:
    @files = $FTP->List();
    @textfiles = $FTP->List("*.txt");
    foreach $file (@textfiles) {
    	print "Name: ", $file, "";
    }
  • listmode=2 각 파일에대해 7개의 값을 포함하는 목록. 각각 다음과 같다:
    • 파일명
    • DOS 형식의 파일명. 8.3 형식
    • 크기
    • 속성
    • 생성일자
    • 접근일자
    • 변경일자
    예:
    @files = $FTP->List("*.*", 2);
    for($i=0; $i 파일명
    			
  • altname => DOS 형식의 파일명. 8.3 형식
  • size => 크기
  • attr => 속성
  • ctime => 생성일자
  • atime => 접근일자
  • mtime => 변경일자
예:
@files = $FTP->List("*.*", 3);
foreach $file (@files) {
	print $file->{'name'}, " ", $file->{'size'}, " ", $file->{'attr'}, "";
}
주의: 항상 다음 형식의 문자열로 리턴된다: second, hour, minute, day, month, year 예:
$file->{'mtime'} == "0,10,58,9,12,1996" stands for 09 Dec 1996 at 10:58:00
Mkdir name
Md name
웍격 FTP 호스트에 디렉토리를 생성한다. 오류가 발생하면 undef가 리턴된다. 예:
$FTP->Mkdir("NextBuild");
Mode [mode]
인자 없이 호출하면 FTP 세션에대한 현재의 전송 모드를 리턴한다(ASCII 경우 "asc", 2진인 경우 "bin"). mode 인자는 "asc"나 "bin"일 수 있으며, 이 경우에 전송모드가 선택된다. 또한 AsciiBinary 함수를 본다. 오류가 발생하면 undef가 리턴된다. 예:
print "Current mode is: ", $FTP->Mode();
$FTP->Mode("asc"); # ... same as $FTP->Ascii();
Pasv [mode]
인자없이 호출하면서 현재 FTP 세션이 PASS 전송모드라면 1이 리턴된다. 그렇지 않으면 0이 리턴된다. 인터넷 개체의 메소드처럼 mode 매개변수(0/1)로 호출할 수 있다. 이 경우에는 다음 FTP 개체에대한 기본값으로 설정된다(FTP 세션이 일단 열리면 이 값을 변경할 수 없으므로 FTP 세션을 열기전에 이 값을 설정한다). 예:
print "Pasv is: ", $FTP->Pasv();

$INET->Pasv(1);
$INET->FTP($FTP,"ftp.activeware.com", "anonymous", "dada@divinf.it");
$FTP->Pasv(0); # this will be ignored...
Put local, [remote, context]
local 파일을 remote라는 이름으로 원격 FTP 서버에 저장하기위해 업로드한다. remote가 생략되면 local과 동일한 이름이 사용된다. 오류가 발생하면 undef가 리턴된다. context는 비동기시 동작을 확인하기위한 번호이다. 비동기 동작에대한 자세한 정보는 SetStatusCallbackGetStatusCallback을 본다. 예:
$FTP->Put("internet.zip");
$FTP->Put("d:/users/dada/temp.zip", "/temp/dada.zip");
Pwd
FTP 서버의 현재 디렉토리나 undef(오류시)를 리턴한다. 예:
$path = $FTP->Pwd();
Rename oldfile, newfile
Ren oldfile, newfile
웍격 FTP 호스트의 파일 이름을 변경한다. 오류가 발생하면 undef을 리턴한다. 예:
$FTP->Rename("110-i86.zip", "68i-011.zip");
Rmdir name
Rd name
웍격 FTP 호스트의 디렉토리를 삭제한다. 오류가 발생하면 undef을 리턴한다. 예:
$FTP->Rmdir("CurrentBuild");


다음글: 펄 응용 - 제 7강 Win32::Internet 부록 (11621)1996-05-08
이전글: 펄 응용 - 제 5강 Win32::Internet 소개 (6722)1996-05-05
<< 이전페이지 (2/4)다음페이지 (4/4) >>

세상사는 이야기

  • 컴맹도 할 수 있는 War >
  • 너희를 자유롭게 하리 >
  • 찾아라! 아이폰 순정용 >
  • 만원대 피젯 스피너를 >
  • 망하는 길을 택한 쿠팡 >
  • 물놀이에 적당한 가성 >
  • 컴퓨터를 IPTV로 2, po >
  • 컴퓨터를 IPTV로 만들 >
  • Warning.or.kr도 우회 >
  • 한국의 100대 부자, 어 >


  • RSS 구독 (익명 | 회원 | 강좌 | 포럼)
    (C) 1996 ~ 2017 QAOS.com All rights reserved.