Up ! System - Système de fichiers Ftp

Ce programme présente l'usage du système de fichiers sur un serveur File Transfer Protocol (FTP).

Le fichier source est ${UPS_HOME}/upsnet/demo/${UPS_LANGUAGE}/sysftp.upl.

Mode compilé

Commande de compilation

upscmp Source=sysftp.upl

Commande d'exécution

Exécution du serveur

upssrv NbServeurs=1 PasDOrb=Oui Module1=UpsFts

Exécution du client

upssng Source=sysftp NbServeurs=0

Mode interprété

Exécution du serveur

upssrv NbServeurs=1 PasDOrb=Oui Module1=UpsFts

Exécution du client

upssng Source=sysftp NbServeurs=0

Fichier source

Source Composant "Exemple d'emploi d'Up ! System" Version 4.0.0;

ImporterModule
/************/
Variable
/******/
Principal
/*******/
Variable
/******/
Debut
MonServeur=ServeurFtp("ftp://local:21", "/local_ftp", "anonymous", "contact@up-comp.com");

CreerRepertoire("/local_ftp/tmp2");
CreerFichier("/local_ftp/tmp2/essai.txt");
Si IlExisteRepertoire("/local_ftp/tmp2") Alors Fin Si
Si IlExisteFichier("/local_ftp/tmp2/essai.txt") Alors Fin Si
ChangerDroitsDAcces("/local_ftp/tmp2/essai.txt", DroitLectureEcriture, DroitLecture, DroitLecture);
Selon LireDroitsDAcces("/local_ftp/tmp2/essai.txt", ?, ?) Faire Fin Selon
CopierFichier("/local_ftp/tmp2/essai.txt", "/local_ftp/tmp2/essai.sav");
RenommerFichier("/local_ftp/tmp2/essai.sav", "/local_ftp/tmp2/essai.bak");
SupprimerFichier("/local_ftp/tmp2/essai.bak");
CopierRepertoire("/local_ftp/tmp2", "/local_ftp/tmp3");
SupprimerRepertoire("/local_ftp/tmp2");
RenommerRepertoire("/local_ftp/tmp3", "/local_ftp/tmp2");
SupprimerRepertoire("/local_ftp/tmp2");
Si IlExisteRepertoire("/local_ftp/tmp2") Alors Fin Si
Si IlExisteFichier("/local_ftp/tmp2/essai.txt") Alors Fin Si
ChangerRepertoireCourant("/local_ftp/tmp");
Ecran.Ecrire("RepertoireCourant="+LireRepertoireCourant());

Ecran.Ecrire("Taille essai.txt="+Caractere(LireCaracteristiquesFichier("/local_ftp/essai.txt")));
Ecran.Ecrire("Taille essai.txt="+Caractere(LireCaracteristiquesFichier("/local_ftp/essai.txt", Ecran.Ecrire(UtilisateurProprietaire);
Ecran.Ecrire(GroupeProprietaire);
Ecran.Ecrire(Caractere(DateDernierAcces));
Ecran.Ecrire(Caractere(DateDerniereModification));
Si EstCache Alors Sinon Fin Si
Ecran.Ecrire("\n");

L1=ListerFichiers("/local_ftp/", Nul);
Pour FL=L1.ParcoursAuDebut() JusquA L1.DernierElement() Faire Fin Pour
Ecran.Ecrire("\n");

CreerRepertoire("ftp://local:21/tmp2");
CreerFichier("ftp://local:21/tmp2/essai.txt");
Si IlExisteRepertoire("ftp://local:21/tmp2") Alors Fin Si
Si IlExisteFichier("ftp://local:21/tmp2/essai.txt") Alors Fin Si
ChangerDroitsDAcces("ftp://local:21/tmp2/essai.txt", DroitLectureEcriture, DroitLecture, DroitLecture);
Selon LireDroitsDAcces("ftp://local:21/tmp2/essai.txt", ?, ?) Faire Fin Selon
CopierFichier("ftp://local:21/tmp2/essai.txt", "ftp://local:21/tmp2/essai.sav");
RenommerFichier("ftp://local:21/tmp2/essai.sav", "ftp://local:21/tmp2/essai.bak");
SupprimerFichier("ftp://local:21/tmp2/essai.bak");
CopierRepertoire("ftp://local:21/tmp2", "ftp://local:21/tmp3");
SupprimerRepertoire("ftp://local:21/tmp2");
RenommerRepertoire("ftp://local:21/tmp3", "ftp://local:21/tmp2");
SupprimerRepertoire("ftp://local:21/tmp2");
Si IlExisteRepertoire("ftp://local:21/tmp2") Alors Fin Si
Si IlExisteFichier("ftp://local:21/tmp2/essai.txt") Alors Fin Si
ChangerRepertoireCourant("ftp://local:21/tmp");
Ecran.Ecrire("RepertoireCourant="+LireRepertoireCourant());

Ecran.Ecrire("Taille essai.txt="+Caractere(LireCaracteristiquesFichier("ftp://local:21/essai.txt"))); Ecran.Ecrire("Taille essai.txt="+Caractere(LireCaracteristiquesFichier("ftp://local:21/essai.txt", Ecran.Ecrire(UtilisateurProprietaire);
Ecran.Ecrire(GroupeProprietaire);
Ecran.Ecrire(Caractere(DateDernierAcces));
Ecran.Ecrire(Caractere(DateDerniereModification));
Si EstCache Alors Sinon Fin Si
Ecran.Ecrire("\n");

L1=ListerFichiers("ftp://local:21/", Nul);
Pour FL=L1.ParcoursAuDebut() JusquA L1.DernierElement() Faire Fin Pour
Ecran.Ecrire("\n");

MonServeur=Nul;
Fin Principal

Résultat de l'exécution

Il existe repertoire '/local_ftp/tmp2' Il existe fichier '/local_ftp/tmp2/essai.txt' Autres droits RepertoireCourant=/tmp Taille essai.txt=0 Taille essai.txt=0 0 0 01/01/1900 00:00:00 01/01/1900 00:00:00 N'est pas cache . .. essai.txt Il existe repertoire 'ftp://local:21/tmp2' Il existe fichier 'ftp://local:21/tmp2/essai.txt' Autres droits RepertoireCourant=/tmp Taille essai.txt=0 Taille essai.txt=0 0 0 01/01/1900 00:00:00 01/01/1900 00:00:00 N'est pas cache . .. essai.txt