Up ! System - Système de fichiers Up ! Archive

Ce programme présente l'usage du système de fichiers sur les archives.

Le fichier source est ${UPS_HOME}/upsvtm/demo/${UPS_LANGUAGE}/sysarc.upl.

Mode compilé

Commande de compilation

upscmp Source=sysarc.upl

Commande d'exécution

sysarc

Mode interprété

upssng Source=sysarc.upl

Fichier source

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

ImporterModule
/*************/
Variable
/******/
Principal
/*******/
Variable
Debut
MonArchive=ArchiveUpsArc("${UPS_HOME}/demo/tmp/${UPS_USER}/monarchive.upa", "/monarchive");
MonArchive.ChangerModeCompression(ModeCompressionAucun);

CreerRepertoire("/monarchive/tmp");
CopierFichier("/tmp/essai.txt", "/monarchive/essai.txt");

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

Ecran.Ecrire("Taille essai.txt="+Caractere(LireCaracteristiquesFichier("/monarchive/essai.txt")));
Ecran.Ecrire("Taille essai.txt="+Caractere(LireCaracteristiquesFichier("/monarchive/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("/monarchive/", Nul);
Pour FL=L1.ParcoursAuDebut() JusquA L1.DernierElement() Faire Fin Pour
Ecran.Ecrire("\n");

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

Ecran.Ecrire("Taille essai.txt="+Caractere(LireCaracteristiquesFichier("UpsArc://monarchive/essai.txt")));
Ecran.Ecrire("Taille essai.txt="+Caractere(LireCaracteristiquesFichier("UpsArc://monarchive/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("UpsArc://monarchive/", Nul);
Pour FL=L1.ParcoursAuDebut() JusquA L1.DernierElement() Faire Fin Pour
Ecran.Ecrire("\n");

MonArchive=Nul;
Fin Principal

Résultat de l'exécution

Il existe repertoire '/monarchive/tmp2' Il existe fichier '/monarchive/tmp2/essai.txt' Lecture, Ecriture et Execution RepertoireCourant=/monarchive/tmp Taille essai.txt=1,445 Taille essai.txt=1,445 0 0 26/11/2005 10:42:16 26/11/2005 10:42:16 N'est pas cache tmp essai.txt Il existe repertoire 'UpsArc://monarchive/tmp2' Il existe fichier 'UpsArc://monarchive/tmp2/essai.txt' Lecture, Ecriture et Execution RepertoireCourant=/monarchive/tmp Taille essai.txt=1,445 Taille essai.txt=1,445 0 0 26/11/2005 10:42:16 26/11/2005 10:42:16 N'est pas cache tmp essai.txt