Aide mémoire Perl
Fichiers
Ecrire dans un fichier
Ouverture :
- En écriture: (Fichier créé, supprimé si existant)
open(DESCR,">$fichier")
- En écriture: (Modifications en fin de fichier)
open(DESCR,">>$fichier")
Ensuite écriture et fermeture du fichier
print DESC "toto\n"; print DESC $mavar; close(DESC);
Lire un fichier
- Exemple 1 : lire un fichier et mettre le contenu dans le tableau @liste,
une ligne par élément du tableau, prévenir sans
sortir si fichier non trouvé:
my @liste; if (open(DESCR,$fichier)) {@liste = <DESCR>;} else {print "Erreur lecture $fichier:$!\n";} close(DESCR); - Exemple 2 : lire un fichier et mettre le contenu dans la variable
$buf, sortir du programme en donnant la raison si fichier non trouvé
:
my $l; open(DESCR,$fichier) || die "Erreur read $fichier:$!\n"; while (defined(my $l=<DESCR>)) {$buf.= $l;} close(DESCR);
Supprimer un fichier:
unlink("/le/chemin/de/mon/fichier");
Copier un fichier:
use File::Copy; copy($fileOrigine,$fileDestination);
Test sur les fichiers
- -e : existence
# Est-ce que le fichier existe ? if (-e $fichier) {print "$fichier existe !\n";} - -r : lecture
# Est-ce que le fichier est accessible en lecture ? if (-r $fichier) {print "Je peux lire $fichier !\n";} - -w : écriture
# Est-ce que le fichier est accessible en ecriture ? if (-w $fichier) {print "Je peux ecrire $fichier !\n";} - -x : éxécution
# Est-ce que le fichier est accessible en execution ? if (-x $fichier) {print "$fichier est executable !\n";}
Répertoires
Parcours d'un répertoire
opendir(DIR, $dir) ||
print "Repertoire $dir introuvable:$!\n";
while(readdir(DIR)) {
$filename = $_;
# On passe les fichiers caches
next if( $filename =~ /^\.|^\#|~$/ );
}
closedir(DIR);
Test sur le répertoire
-d : répertoire (Les mêmes tests que pour les fichiers peuvent être effectués)
# Est-ce que le fichier est un répertoire ?
if (-d $fichier) {
print "$fichier est un repertoire !\n";
}
| Dernière modification le Sat Mar 8 14:00:56 2003 |
© Alain & Estelle BARBET Textes et images 1997-2003 |