Moduł Net::FTP

Uniwersytet Gdański - Instytut Matematyki - Zakład Informatyki - Strona domowa

O czym to jest

Moduł Net::FTP to moduł dostarczający metod umożliwiających zaimplementowanie prostego klienta FTP w Perlu.

Konstruktor

new ([ HOST ] [, OPTIONS ])

HOST może zostać pominięty i podany jako jedna z opcji OPTIONS. Możliwe są następujące opcje:

Host
może to być pojedyńczy scalar t.j. zdefinowany dla opcji PeerAddr w IO::Socket::INET albo referencja do tablicy.
Firewall
może zostać przesłonięte przez zmienną środowiskową FTP_FIREWALL. jeżeli nie można ustanowić połączenia z hostem, to wtedy polączenie jest ustanawiane z zaporą oraz string @hostname dołączany jest do identyfikatora użytkownika.
FirewallType
może być przesłonięte przez zmienną środowiskową FTP_FIREWALL_TYPE. listę dopuszczalnych typów można znależc w opisie ftp_firewall_type dla Net::Config.
BlockSize
wielkość przesyłanego pakietu
Port
numer portu
Timeout
limit czasu odpowiedzi
Debug
żądany poziom debuggowania (zobacz metodę debug dla Net::Cmd)
Passive
wartość niezerowa oznacza tryb pasywny, zerowa tryb aktywny. jeżeli nie zdefiniowana, wartość zostanie ustawiona przez zmienną środowiskową FTP_PASSIVE. domyślnym trybem jest tryb pasywny.
Hash
jeżeli damy tu referencję do uchwytu pliku zostanie na nim wywołana metoda hash()
LocalAddr
argument ten zostanie przekazany do IO::Socket::INET

W przypadklu błędu zwraca undef

Wybrane metody

login
login ([LOGIN [,PASSWORD [, ACCOUNT] ] ])jeżeli nie podamy argumentów, anonymous zostanie użyty jako login, aanonymous@ jako hasło.
authorize
authorize ( [AUTH [, RESP]])zostanie wywołana jeżeli polączenie ma nastąpić przez zaporę.
rename
rename ( OLDNAME, NEWNAME )zmienia nazwę pliku na serwerze z OLDNAME na NEWNAME.
delete
delete ( FILENAME )wysyła żądanie usunięcia pliku FILENAME
cwd
cwd ( [ DIR ] )zmienia folder na ten podany w DIR.
pwd
pwd ()zwraca pełną ścieżkę do bieżącego folderu.
rmdir
rmdir ( DIR [, RECURSE ])wysyła żądanie usunięcie folderu DIR. jeżeli jako opcję RECURSE podamy wartość true usuniemy folder rekursywnie.
mkdir
mkdir ( DIR [, RECURSE ])uworzy folder o nazwie DIR. jeżeli jako opcję RECURSE podamy wartość true utworzy wszystkie foldery wewnątrz podanej przez nas scieżki.
get
get ( REMOTE_FILE [, LOCAL_FILE [, WHERE]] )pobierz plik REMOTE_FILE jako LOCAL_FILE do bieżącego folderu bądź podanego jako opcja WHERE. zwraca LOCAL_FILE.
put
put ( LOCAL_FILE [, REMOTE_FILE ] )wyślij plik LOCAL_FILE do serwera. zwraca REMOTE_FILE.
size
size ( FILE )zwraca wielkość pliku FILE w bajtach.
append
append ( LOCAL_FILE [, REMOTE_FILE ] )działa jak metoda put, tyle że dodaje do pliku na serwerze. zwraca REMOTE_FILE.
appe
appe ( FILE )informuje serwer, że chcemy dodać jakieś dane do pliku FILE. jeżeli taki plik nie istnieje, zostanie on utworzony.
abort
abort ()przerwij bieżący transfer danych.
quit
quit ()wyślij komende QUIT do serwera i zamknij połączenie.

Przykład

use Net::FTP; my $host="manta.univ.gda.pl"; my $login="abc1"; my $password="a123"; my $path="perl"; my $file="plik.pl"; $ftp=Net::FTP->new ($host,Timeout=>240); $ftp->login($login,$password); $ftp->cwd ($path); @files=$ftp->dir; foreach(@files){ print "$_\n"; } $ftp->get ($file); $ftp->quit; print "rozmiar pobranego pliku ",-s $file," bajtow\n";

Dodatkowe informacje

Więcej w dokumentacji Net::FTP - FTP Client class - search.cpan.org

Informacje o autorze opracowania

Autor: M.M.

Uniwersytet Gdański - Instytut Informatyki - Strona domowa - Perl - Wyklady
[c] Piotr Arłukowicz, materiały z tej strony udostępnione są na licencji GNU.