Fonction Perl glob
La description
Cette fonction renvoie une liste de fichiers correspondant à EXPR tels qu'ils seraient développés par le shell Bourne standard. Si l'EXPR ne spécifie pas de chemin, utilise le répertoire actuel. Si EXPR est omis, la valeur de $ _ est utilisée.
À partir de Perl 5.6, l'expansion se fait en interne, plutôt que d'utiliser un script externe. L'expansion suit le style d'expansion csh (et tous ses dérivés, y compris tcsh et bash), qui se traduit par ce qui suit -
Les fichiers commençant par une seule période sont ignorés sauf si EXPR correspond explicitement.
Le caractère * correspond à zéro ou plusieurs caractères de tout type.
Le ? caractère correspond à un caractère de n'importe quel type.
La construction [..] correspond aux caractères répertoriés, y compris les plages, selon les expressions régulières.
Les caractères ~ correspondent au répertoire personnel; ~ nom correspond au répertoire personnel du nom d'utilisateur.
La construction {..} correspond à l'un des mots séparés par des virgules entre accolades.
Syntaxe
Voici la syntaxe simple de cette fonction -
glob EXPR
glob
Valeur de retour
Cette fonction renvoie undef en cas d'erreur sinon Premier fichier dans la liste des noms développés en contexte scalaire et Liste vide en cas d'erreur sinon Liste des noms de fichiers développés en contexte liste.
Exemple
Voici l'exemple de code montrant son utilisation de base -
#!/usr/bin/perl
(@file_list) = glob "perl_g*";
print "Returned list of file @file_list\n";
Lorsque le code ci-dessus est exécuté, il produit le résultat suivant -
Returned list of file