Vous trouverez ci-dessous quelques-unes des fonctions standard pour manipuler les répertoires :
opendir DIRHANDLE, EXPR # Ouvrir le répertoire readdir DIRHANDLE # Lire le répertoire rembobiner DIRHANDLE # Positionner le pointeur au début telldir DIRHANDLE # Renvoie la position actuelle du répertoire seekdir DIRHANDLE, POS # Localiser la position POS spécifiée dans le répertoire fermé DIRHANDLE # Fermer le répertoire
Afficher tous les fichiers
Afficher tous les fichiers du répertoire L'exemple suivant utilise l'opérateur glob, comme illustré ci-dessous :
Exemple
#!/usr/bin/perl # Afficher tous les fichiers du répertoire /tmp $dir = " /tmp/* " ; mon @files = global ( $rép ) ; pour chaque ( @fichiers ) { imprimer $ _ . # Afficher tous les fichiers se terminant par .c dans le répertoire /tmp $dir = " /tmp/*.c " ; @files = glob ( $rép ) ; pour chaque ( @fichiers ) { imprimer $ _ . # Afficher tous les fichiers cachés $dir = " /tmp/.* " ; @files = glob ( $rép ) ; pour chaque ( @fichiers ) { imprimer $ _ . # Afficher tous les fichiers dans les répertoires /tmp et /home $dir = " /tmp/* /home/* " ; @files = glob ( $rép ) ; pour chaque ( @fichiers ) { imprimer $ _ . L'exemple suivant peut répertorier tous les fichiers du répertoire actuel :
Exemple
#!/usr/bin/perl répertoire ouvert ( DIR , ' . ' ) ou mourir " Impossible
d' ouvrir le répertoire, $! " while ( $fichier = répertoire de lecture DIR ) { imprimer " $fichier n " ; } fermé DIR ; Si vous souhaitez afficher tous les fichiers se terminant par .c dans le répertoire /tmp, vous pouvez utiliser le code suivant :
Exemple
#!/usr/bin/perl répertoire ouvert ( DIR , ' . ' ) ou mourir " Impossible d'ouvrir le répertoire, $ ! " ; ( trier grep ( /^.*. c $/, readdir ( DIR ) ) ) { imprimer " $_ n " ; } fermé DIR ; Créer un nouveau répertoire
Nous pouvons utiliser la fonction mkdir pour créer un nouveau répertoire. Vous devez disposer des autorisations suffisantes pour créer le répertoire avant d'exécuter :
Exemple
#!/usr/bin/perl $dir = " /tmp/perl " ; # Créez un répertoire Perl sous le répertoire /tmp mkdir ( $rép ) ou mourir " Impossible de créer le répertoire
$dir , $! " ; " Répertoire créé avec succès n " ; supprimer le répertoire
Nous pouvons utiliser la fonction rmdir pour supprimer un répertoire. Des autorisations suffisantes sont requises pour effectuer cette opération. De plus, le répertoire à supprimer doit être un répertoire vide :
Exemple
#!/usr/bin/perl $dir = " /tmp/perl " ; # Supprime le répertoire perl sous le répertoire /tmp rmdir ( $rép ) ou mourir " Impossible de supprimer le répertoire
$dir , $! " ; " Répertoire supprimé avec succès n " ; Changer de répertoire
Nous pouvons utiliser la fonction chdir pour changer de répertoire actuel. Des autorisations suffisantes sont requises pour effectuer cette opération. Les exemples sont les suivants :
Exemple
#!/usr/bin/perl $dir = " / home " # Déplace le répertoire actuel vers le répertoire /home chdir ( $rép ) ou mourir " Impossible de basculer le répertoire vers $ dir , $! " ; " Le répertoire dans lequel vous vous trouvez actuellement est $dir n " ; En exécutant le programme ci-dessus, le résultat de sortie est :
Le répertoire dans lequel vous vous trouvez actuellement est /home