NAME/NOM

perlfaq - Foire aux questions sur Perl

DESCRIPTION

La FAQ Perl comprend plusieurs documents qui répondent aux questions les plus courantes concernant Perl et la programmation en Perl. Elle est organisée en neuf thèmes majeurs présentés ici.

Où se procurer ce document ?

La FAQ Perl est fourni dans la distribution standard de Perl. Donc, si vous avez Perl, vous devez avoir la FAQ Perl. Vous devez aussi avoir l'outil perldoc qui vous permet de lire toute la documentation :

$ perldoc perlfaq

Au-delà de votre système local, vous pouvez trouver cette FAQ Perl sur le web. Par exemple sur http://perldoc.perl.org/ (ou http://perl.enstimac.fr/ pour la présente traduction française).

Comment contribuer à ce document.

Les corrections, les ajouts ou les suggestions pour la version originale doivent être adressés à

<perlfaq-workers AT perl DOT com>. Les volontaires utilisent cette adresse pour coordonner leurs efforts et suivre le développement de la FAQ Perl. Ils sauront apprécier vos contributions mais ils n'ont pas le temps de vous aider, n'utilisez donc pas cette adresse pour poser des questions sur la FAQ Perl.

Les corrections et les ajouts à la version française doivent être adressés aux traducteurs ou à <paul.gaborit AT enstimac DOT fr>. Si vous voulez participer à l'effort de traduction et de relecture, vous pouvez passer par le même canal.

Que va-t-il se passer si vous envoyez votre problème de Perl aux auteurs ?

Ne faites pas cela !

Si vous avez une question dont la réponse ne semble pas être dans la FAQ, vous feriez mieux de lire le chapitre 2 de cette FAQ pour savoir où poser votre question.

CREDITS

Tom Christiansen a écrit la FAQ Perl d'origine qui a ensuite été étendue avec l'aide de Nat Torkington. Les perlfaq-workers maintiennent les versions actuelles et font des mises à jour. De nombreuses personnes ont contribué aux questions, aux corrections et aux commentaires et la FAQ indique ces contributions à l'endroit approprié.

Author and Copyright Information

Tom Christiansen a écrit la FAQ Perl d'origine brian d foy <bdfoy@cpan.org> a écrit cette version. Voir les documents eux-mêmes pour les informations précises des droits.

Ce document est disponible sous les mêmes conditions que Perl lui-même. Les exemples de codes de tous les documents de la FAQ Perl sont dans le domaine public. Utilisez-les comme vous le souhaitez (à vos risques et périls).

Table des matières

perlfaq - Ce document.
perlfaq1 - Questions générales sur Perl.
perlfaq2 - Trouver et apprendre Perl.
perlfaq3 - Outils de programmation.
perlfaq4 - Manipulation de données.
perlfaq5 - Fichiers et formats.
perlfaq6 - Expressions rationnelles.
perlfaq7 - Questions générales sur le langage Perl.
perlfaq8 - Interaction avec le système.
perlfaq9 - Réseau.

Toutes les questions

perlfaq1: Questions générales sur Perl.

Question et informations très générales sur Perl.

  • Qu'est ce que Perl ?

  • Qui supporte Perl ? Qui le développe ? Pourquoi est-il gratuit ?

  • Quelle version de Perl dois-je utiliser ?

  • Qu'est-ce que veut dire perl4, perl5 ou perl6 ?

  • Qu'est-ce que Ponie ?

  • Qu'est-ce que perl6 ?

  • Est-ce que Perl est stable ?

  • Est-il difficile d'apprendre Perl ?

  • Est-ce que Perl tient la comparaison avec d'autres langages comme Java, Python, REXX, Scheme ou Tcl ?

  • Que puis-je faire avec Perl ?

  • Quand ne devrais-je pas programmer en Perl ?

  • Quelle est la différence entre "perl" et "Perl" ?

  • Parle-t-on de programme Perl ou de script Perl ?

  • Qu'est ce qu'un JAPH ?

  • Où peut on trouver une liste des mots d'esprit de Larry

  • Comment convaincre mon administrateur système/chef de projet/employés d'utiliser Perl/Perl5 plutôt qu'un autre langage ?

perlfaq2: Trouver et apprendre Perl.

Où trouver les sources et la documentation de Perl ainsi que de l'aide et autres choses similaires.

  • Quelles machines supportent perl ? Où puis-je trouver Perl ?

  • Comment trouver une version binaire de perl ?

  • Je n'ai pas de compilateur C sur mon système. Comment puis-je compiler mon propre interpréteur Perl ?

  • J'ai copié le binaire perl d'une machine sur une autre mais les scripts ne fonctionnent pas.

  • J'ai récupéré les sources et j'essaie de les compiler mais gdbm/dynamic loading/malloc/linking/... échoue. Comment faire pour que ça marche ?

  • Quels modules et extensions existent pour Perl ? Qu'est-ce que CPAN ? Que signifie CPAN/src/... ?

  • Existe-t-il une version de Perl certifiée ISO ou ANSI ?

  • Où puis-je trouver des informations sur Perl ?

  • Quels sont les groupes de discussion concernant Perl sur Usenet ? Où puis-je poser mes questions ?

  • Où puis-je poster mon code source ?

  • Les livres sur Perl

  • Quels sont les revues ou magazines parlant de Perl ?

  • Quelles sont les listes de diffusion concernant Perl ?

  • Où trouver les archives de comp.lang.perl.misc ?

  • Où puis-je acheter une version commerciale de Perl ?

  • Où dois-je envoyer mes rapports de bugs ?

  • Qu'est-ce que perl.com ? Les Perl Mongers ? pm.org ? perl.org ? cpan.org ?

perlfaq3: Outils de programmation.

Outils pour le programmeur et support technique.

  • Comment fais-je pour... ?

  • Comment utiliser Perl de façon interactive ?

  • Existe-t-il un shell Perl ?

  • Comment puis-je connaître les modules installés sur mon système ?

  • Comment déboguer mes programmes Perl ?

  • Comment mesurer les performances de mes programmes Perl ?

  • Comment faire une liste croisée des appels de mon programme Perl ?

  • Existe-t-il un outil de mise en page de code Perl ?

  • Existe-t-il un ctags pour Perl ?

  • Existe-t-il un environnement de développement intégré (IDE) ou un éditeur Perl sous Windows ?

  • Où puis-je trouver des macros pour Perl sous vi ?

  • Où puis-je trouver le mode perl pour emacs ?

  • Comment utiliser des 'curses' avec Perl ?

  • Comment puis-je utiliser X ou Tk avec Perl ?

  • Comment rendre mes programmes Perl plus rapides ?

  • Comment faire pour que mes programmes Perl occupent moins de mémoire ?

  • Est-ce sûr de retourner un pointeur sur une donnée locale ?

  • Comment puis-je libérer un tableau ou une table de hachage pour réduire mon programme ?

  • Comment rendre mes scripts CGI plus efficaces ?

  • Comment dissimuler le code source de mon programme Perl ?

  • Comment compiler mon programme Perl en code binaire ou C ?

  • Comment compiler Perl pour en faire du Java ?

  • Comment faire fonctionner #!perl sur [MS-DOS,NT,...] ?

  • Puis-je écrire des programmes Perl pratiques sur la ligne de commandes ?

  • Pourquoi les commandes Perl à une ligne ne fonctionnent-elles pas sur mon DOS/Mac/VMS ?

  • Où puis-je en apprendre plus sur la programmation CGI et Web en Perl ?

  • Où puis-je apprendre la programmation orientée objet en Perl ?

  • Où puis-je en apprendre plus sur l'utilisation liée de Perl et de C ?

  • J'ai lu perlembed, perlguts, etc., mais je ne peux inclure du perl dans mon programme C, qu'est ce qui ne va pas ?

  • Quand j'ai tenté d'exécuter mes scripts, j'ai eu ce message. Qu'est ce que cela signifie ?

  • Qu'est-ce que MakeMaker ?

perlfaq4: Manipulation de données.

Les questions liées à la manipulation des nombres, des dates, des chaînes de caractères, des tableaux, des tables de hachage, ainsi qu'à divers problèmes relatifs aux données.

  • Pourquoi est-ce que j'obtiens des longs nombres décimaux (ex. 19.9499999999999) à la place du nombre que j'attends (ex. 19.95) ?

  • Pourquoi int() ne fonctionne pas bien ?

  • Pourquoi mon nombre octal n'est-il pas interprété correctement ?

  • Perl a-t-il une fonction round() ? Et ceil() (majoration) et floor() (minoration) ? Et des fonctions trigonométriques ?

  • Comment faire des conversions numériques entre différentes bases, entre différentes représentations ?

  • Pourquoi & ne fonctionne-t-il pas comme je le veux ?

  • Comment multiplier des matrices ?

  • Comment effectuer une opération sur une série d'entiers ?

  • Comment produire des chiffres romains ?

  • Pourquoi mes nombres aléatoires ne sont-ils pas aléatoires ?

  • Comment obtenir un nombre aléatoire entre X et Y ?

  • Comment trouver le jour ou la semaine de l'année ?

  • Comment trouver le siècle ou le millénaire actuel ?

  • Comment comparer deux dates ou en calculer la différence ?

  • Comment convertir une chaîne de caractères en secondes depuis l'origine des temps ?

  • Comment trouver le jour du calendrier Julien ?

  • Comment trouver la date d'hier ?

  • Perl a-t-il un problème avec l'an 2000 ? Perl est-il compatible an 2000 ?

  • Comment m'assurer de la validité d'une entrée ?

  • Comment supprimer les caractères d'échappement d'une chaîne de caractères ?

  • Comment enlever des paires de caractères successifs ?

  • Comment effectuer des appels de fonction dans une chaîne ?

  • Comment repérer des éléments appariés ou imbriqués ?

  • Comment inverser une chaîne de caractères ?

  • Comment développer les tabulations dans une chaîne de caractères ?

  • Comment remettre en forme un paragraphe ?

  • Comment accéder à ou modifier N caractères d'une chaîne de caractères ?

  • Comment changer la nième occurrence de quelque chose ?

  • Comment compter le nombre d'occurrences d'une sous-chaîne dans une chaîne de caractères ?

  • Comment mettre en majuscule toutes les premières lettre des mots d'une ligne ?

  • Comment découper une chaîne séparée par un [caractère] sauf à l'intérieur d'un [caractère] ?

  • Comment supprimer des espaces blancs au début/à la fin d'une chaîne ?

  • Comment cadrer une chaîne avec des blancs ou un nombre avec des zéros ?

  • Comment extraire une sélection de colonnes d'une chaîne de caractères ?

  • Comment calculer la valeur soundex d'une chaîne ?

  • Comment interpoler des variables dans des chaînes de texte ?

  • En quoi est-ce un problème de toujours placer "$vars" entre guillemets ?

  • Pourquoi est-ce que mes documents <<HERE ne marchent pas ?

  • Quelle est la différence entre une liste et un tableau ?

  • Quelle est la différence entre $array[1] et @array[1] ?

  • Comment supprimer les doublons d'une liste ou d'un tableau ?

  • Comment savoir si une liste ou un tableau inclut un certain élément ?

  • Comment calculer la différence entre deux tableaux ? Comment calculer l'intersection entre deux tableaux ?

  • Comment tester si deux tableaux ou hachages sont égaux ?

  • Comment trouver le premier élément d'un tableau vérifiant une condition donnée ?

  • Comment gérer des listes chaînées ?

  • Comment gérer des listes circulaires ?

  • Comment mélanger le contenu d'un tableau ?

  • Comment traiter/modifier chaque élément d'un tableau ?

  • Comment sélectionner aléatoirement un élément d'un tableau ?

  • Comment générer toutes les permutations des N éléments d'une liste ?

  • Comment trier un tableau par (n'importe quoi) ?

  • Comment manipuler des tableaux de bits ?

  • Pourquoi defined() retourne vrai sur des tableaux et hachages vides ?

  • Comment traiter une table entière ?

  • Que se passe-t-il si j'ajoute ou j'enlève des clefs d'un hachage pendant que j'itère dessus ?

  • Comment rechercher un élément d'un hachage par sa valeur ?

  • Comment savoir combien d'entrées sont dans un hachage ?

  • Comment trier une table de hachage (par valeur ou par clef) ?

  • Comment conserver mes tables de hachage dans l'ordre ?

  • Quelle est la différence entre "delete" et "undef" pour des tables de hachage ?

  • Pourquoi mes tables de hachage liées (par tie()) ne font pas la distinction entre exists et defined ?

  • Comment réinitialiser une opération each() non terminée ?

  • Comment obtenir l'unicité des clefs de deux hachages ?

  • Comment enregistrer un tableau multidimensionnel dans un fichier DBM ?

  • Comment faire en sorte que mon hachage conserve l'ordre des éléments que j'y mets ?

  • Pourquoi le passage à un sous-programme d'un élément non défini d'un hachage le crée du même coup ?

  • Comment faire l'équivalent en Perl d'une structure en C, d'une classe/d'un hachage en C++ ou d'un tableau de hachages ou de tableaux ?

  • Comment utiliser une référence comme clef d'une table de hachage ?

  • Comment manipuler proprement des données binaires ?

  • Comment déterminer si un scalaire est un nombre/entier/à virgule flottante ?

  • Comment conserver des données persistantes entre divers appels de programme ?

  • Comment afficher ou copier une structure de données récursive ?

  • Comment définir des méthodes pour toutes les classes ou tous les objets ?

  • Comment vérifier la somme de contrôle d'une carte de crédit ?

  • Comment compacter des tableaux de nombres à virgule flottante simples ou doubles pour le code XS ?

perlfaq5: Fichiers et formats.

E/S (Entrées et Sorties) et autres éléments connexes : descripteurs de fichiers, vidage de tampons, formats d'écriture et mise en page.

  • Comment vider ou désactiver les tampons en sortie ? Pourquoi m'en soucier ?

  • Comment changer une ligne, effacer une ligne, insérer une ligne au milieu ou ajouter une ligne en tête d'un fichier ?

  • Comment déterminer le nombre de lignes d'un fichier ?

  • Comment utiliser l'option -i de Perl depuis l'intérieur d'un programme ?

  • Comment puis-je copier un fichier ?

  • Comment créer un fichier temporaire ?

  • Comment manipuler un fichier avec des enregistrements de longueur fixe ?

  • Comment rendre un descripteur de fichier local à une routine ? Comment passer des descripteurs à d'autres routines ? Comment construire un tableau de descripteurs ?

  • Comment utiliser un descripteur de fichier indirectement ?

  • Comment mettre en place un pied-de-page avec write() ?

  • Comment rediriger un write() dans une chaîne ?

  • Comment afficher mes nombres avec des virgules pour délimiter les milliers ?

  • Comment traduire les tildes (~) dans un nom de fichier ?

  • Pourquoi les fichiers que j'ouvre en lecture-écriture se voient-ils effacés ?

  • Pourquoi <*> donne de temps en temps l'erreur "Argument list too long" ?

  • Y a-t-il une fuite / un bug avec glob() ?

  • Commend ouvrir un fichier dont le nom commence par ">" ou se termine par des espaces ?

  • Comment renommer un fichier de façon sûre ?

  • Comment verrouiller un fichier ?

  • Pourquoi ne pas faire simplement open(FH, ">file.lock") ?

  • Je ne comprends toujours pas le verrouillage. Je veux seulement incrémenter un compteur dans un ficher. Comment faire ?

  • Je souhaite juste ajouter un peu de texte à la fin d'un fichier. Dois-je tout de même utiliser le verrouillage ?

  • Comment modifier un fichier binaire directement ?

  • Comment recupérer la date d'un fichier en perl ?

  • Comment modifier la date d'un fichier en perl ?

  • Comment écrire dans plusieurs fichiers simultanément ?

  • Comment lire le contenu d'un fichier d'un seul coup ?

  • Comment lire un fichier paragraphe par paragraphe ?

  • Comment lire un seul caractère d'un fichier ? Et du clavier ?

  • Comment savoir si un caractère est disponible sur un descripteur de fichier ?

  • Comment écrire un tail -f en perl ?

  • Comment faire un dup() sur un descripteur en Perl ?

  • Comment fermer un descripteur connu par son numéro ?

  • Pourquoi "C:\temp\foo" n'indique pas un fichier DOS ? Et même "C:\temp\foo.exe" ne marche pas ?

  • Pourquoi glob("*.*") ne donne-t-il pas tous les fichiers ?

  • Pourquoi Perl me laisse effacer des fichiers protégés en écriture ? Pourquoi -i écrit-il dans des fichiers protégés ? N'est-ce pas un bug de Perl ?

  • Comment sélectionner une ligne au hasard dans un fichier ?

  • Pourquoi obtient-on des espaces étranges lorsqu'on affiche un tableau de lignes ?

perlfaq6: Expressions rationnelles.

Cette partie de la FAQ est incroyablement courte car les autres parties sont parsemées de réponses concernant les expressions rationnelles. Par exemple, décoder une URL ou vérifier si quelque chose est un nombre ou non relève du domaine des expressions rationnelles, mais ces réponses se trouvent ailleurs que dans ce document (dans perlfaq9 « Comment décoder ou créer ces %-encodings sur le web ? » et dans perlfaq4 « Comment déterminer si un scalaire est un nombre/entier/à virgule flottante ? »).

  • Comment utiliser les expressions rationnelles sans créer du code illisible et difficile à maintenir ?

  • J'ai des problèmes pour faire une reconnaissance sur plusieurs lignes. Qu'est-ce qui ne va pas ?

  • Comment extraire des lignes entre deux motifs qui sont chacun sur des lignes différentes ?

  • J'ai mis une expression rationnelle dans $/ mais cela ne marche pas. Qu'est-ce qui est faux ?

  • Comment faire une substitution indépendante de la casse de la partie gauche mais préservant cette casse dans la partie droite ?

  • Comment faire pour que \w reconnaisse les caractères nationaux ?

  • Comment reconnaître une version locale-équivalente de /[a-zA-Z]/ ?

  • Comment protéger une variable pour l'utiliser dans une expression rationnelle ?

  • À quoi sert vraiment /o ?

  • Comment utiliser une expression rationnelle pour enlever les commentaires de type C d'un fichier ?

  • Est-ce possible d'utiliser les expressions rationnelles de Perl pour reconnaître du texte bien équilibré ?

  • Que veut dire "les expressions rationnelles sont gourmandes" ? Comment puis-je le contourner ?

  • Comment examiner chaque mot dans chaque ligne ?

  • Comment afficher un rapport sur les fréquences de mots ou de lignes ?

  • Comment faire une reconnaissance approximative ?

  • Comment reconnaître efficacement plusieurs expressions rationnelles en même temps ?

  • Pourquoi les recherches de limite de mot avec \b ne marchent pas pour moi ?

  • Pourquoi l'utilisation de $&, $`, or $' ralentit tant mon programme ?

  • À quoi peut bien servir \G dans une expression rationnelle ?

  • Les expressions rationnelles de Perl sont-elles AFD ou AFN ? Sont-elles conformes à POSIX ?

  • Qu'est ce qui ne va pas avec l'utilisation de grep dans un contexte vide ?

  • Comment reconnaître des chaînes avec des caractères multi-octets ?

  • Comment rechercher un motif fourni par l'utilisateur ?

perlfaq7: Questions générales sur le langage Perl.

Traite des questions générales sur le langage Perl qui ne trouvent leur place dans aucune autre section.

  • Puis-je avoir une BNF/yacc/RE pour le langage Perl ?

  • Quels sont tous ces $@%&* de signes de ponctuation, et comment savoir quand les utiliser ?

  • Dois-je toujours/jamais mettre mes chaînes entre guillemets ou utiliser les points-virgules et les virgules ?

  • Comment ignorer certaines valeurs de retour ?

  • Comment bloquer temporairement les avertissements ?

  • Qu'est-ce qu'une extension ?

  • Pourquoi les opérateurs de Perl ont-ils une précédence différente de celle des opérateurs en C ?

  • Comment déclarer/créer une structure ?

  • Comment créer un module ?

  • Comment créer une classe ?

  • Comment déterminer si une variable est souillée ?

  • Qu'est-ce qu'une fermeture ?

  • Qu'est-ce que le suicide de variable et comment le prévenir ?

  • Comment passer/renvoyer {une fonction, un handle de fichier, un tableau, un hachage, une méthode, une expression rationnelle} ?

  • Comment créer une variable statique ?

  • Quelle est la différence entre la portée dynamique et lexicale (statique) ? Entre local() et my() ?

  • Comment puis-je accéder à une variable dynamique lorsqu'un

  • Quelle est la différence entre les liaisons profondes et superficielles ?

  • Pourquoi "my($foo) = <FICHIER>;" ne marche pas ?

  • Comment redéfinir une fonction, un opérateur ou une méthode prédéfini ?

  • Quelle est la différence entre l'appel d'une fonction par &foo et par foo() ?

  • Comment créer une instruction switch ou case ?

  • Comment intercepter les accès aux variables, aux fonctions, aux méthodes indéfinies ?

  • Pourquoi une méthode incluse dans ce même fichier ne peut-elle pas être trouvée ?

  • Comment déterminer mon paquetage courant ?

  • Comment commenter un grand bloc de code perl ?

  • Comment supprimer un paquetage ?

  • Comment utiliser une variable comme nom de variable ?

  • Que signifie "bad interpreter" ?

perlfaq8: Interaction avec le système.

Traite des questions concernant les interactions avec le système d'exploitation. Cela inclut les mécanismes de communication inter-processus (IPC -- Inter Process Communication en anglais), le pilotage de l'interface utilisateur (clavier, écran et souris), et d'une façon générale tout ce qui ne relève pas de la manipulation de données.

  • Comment savoir sur quel système d'exploitation je tourne ?

  • Pourquoi ne revient-on pas après un exec() ?

  • Comment utiliser le clavier/écran/souris de façon élaborée ?

  • Comment afficher quelque chose en couleur ?

  • Comment lire simplement une touche sans attendre un appui sur "entrée" ?

  • Comment vérifier si des données sont en attente depuis le clavier ?

  • Comment effacer l'écran ?

  • Comment obtenir la taille de l'écran ?

  • Comment demander un mot de passe à un utilisateur ?

  • Comment lire et écrire sur le port série ?

  • Comment décoder les fichiers de mots de passe cryptés ?

  • Comment lancer un processus en arrière plan ?

  • Comment capturer un caractère de contrôle, un signal ?

  • Comment modifier le fichier masqué (shadow) de mots de passe sous Unix ?

  • Comment positionner l'heure et la date ?

  • Comment effectuer un sleep() ou alarm() de moins d'une seconde ?

  • Comment mesurer un temps inférieur à une seconde ?

  • Comment réaliser un atexit() ou setjmp()/longjmp() ? (traitement d'exceptions)

  • Pourquoi mes programmes avec socket() ne marchent pas sous System V (Solaris) ? Que signifie le message d'erreur « Protocole non supporté » ?

  • Comment appeler les fonctions C spécifiques à mon système depuis Perl ?

  • Où trouver les fichiers d'inclusion pour ioctl() et syscall() ?

  • Pourquoi les scripts perl en setuid se plaignent-ils d'un problème noyau ?

  • Comment ouvrir un tube depuis et vers une commande simultanément ?

  • Pourquoi ne puis-je pas obtenir la sortie d'une commande avec system() ?

  • Comment capturer la sortie STDERR d'une commande externe ?

  • Pourquoi open() ne retourne-t-il pas d'erreur lorsque l'ouverture du tube échoue ?

  • L'utilisation des apostrophes inversées dans un contexte vide

  • Comment utiliser des apostrophes inversées sans traitement du shell ?

  • Pourquoi mon script ne lit-il plus rien de STDIN après que je lui ai envoyé EOF (^D sur Unix, ^Z sur MS-DOS) ?

  • Comment convertir mon script shell en perl ?

  • Puis-je utiliser perl pour lancer une session telnet ou ftp ?

  • Comment écrire "expect" en Perl ?

  • Peut-on cacher les arguments de perl sur la ligne de commande aux programmes comme "ps" ? =item * J'ai {changé de répertoire, modifié mon environnement} dans un script perl. Pourquoi les changements disparaissent-ils lorsque le script se termine ? Comment rendre mes changements visibles ?

  • Comment fermer le descripteur de fichier attaché à un processus sans attendre que ce dernier se termine ?

  • Comment lancer un processus démon ?

  • Comment savoir si je tourne de façon interactive ou pas ?

  • Comment sortir d'un blocage sur événement lent ?

  • Comment limiter le temps CPU ?

  • Comment éviter les processus zombies sur un système Unix ?

  • Comment utiliser une base de données SQL ?

  • Comment terminer un appel à system() avec un control-C ?

  • Comment ouvrir un fichier sans bloquer ?

  • Comment faire la différence entre les erreurs shell et les erreurs perl ?

  • Comment installer un module du CPAN ?

  • Quelle est la différence entre require et use ?

  • Comment gérer mon propre répertoire de modules/bibliothèques ?

  • Comment ajouter le répertoire dans lequel se trouve mon programme dans le chemin de recherche des modules / bibliothèques ?

  • Comment ajouter un répertoire dans mon chemin de recherche (@INC) à l'exécution ?

  • Qu'est-ce que socket.ph et où l'obtenir ?

perlfaq9: Réseau.

Traite des questions relatives aux aspects réseau, à internet et un peu au web.

  • Quelle est la forme correcte d'une réponse d'un script CGI ?

  • Mon script CGI fonctionne en ligne de commandes mais pas depuis un navigateur. (500 Server Error)

  • Comment faire pour obtenir de meilleurs messages d'erreur d'un programme CGI ?

  • Comment enlever les balises HTML d'une chaîne ?

  • Comment extraire des URL ?

  • Comment télécharger un fichier depuis la machine d'un utilisateur ? Comment ouvrir un fichier d'une autre machine ?

  • Comment faire un menu pop-up en HTML ?

  • Comment récupérer un fichier HTML ?

  • Comment automatiser la soumission d'un formulaire HTML ?

  • Comment décoder ou créer ces %-encodings sur le web ?

  • Comment rediriger le navigateur vers une autre page ?

  • Comment mettre un mot de passe sur mes pages Web ?

  • Comment éditer mes fichiers .htpasswd et .htgroup en Perl ?

  • Comment être sûr que les utilisateurs ne peuvent pas entrer de valeurs dans un formulaire qui font faire de vilaines choses à mon script CGI ?

  • Comment analyser un en-tête de mail ?

  • Comment décoder un formulaire CGI ?

  • Comment vérifier la validité d'une adresse électronique ?

  • Comment décoder une chaîne MIME/BASE64 ?

  • Comment renvoyer l'adresse électronique de l'utilisateur ?

  • Comment envoyer un mail ?

  • Comment utiliser MIME pour attacher des documents à un mail ?

  • Comment lire du courrier ?

  • Comment trouver mon nom de machine / nom de domaine / mon adresse IP ?

  • Comment récupérer un article de news ou les groupes actifs ?

  • Comment récupérer/envoyer un fichier par FTP ?

  • Comment faire du RPC en Perl ?

TRADUCTION

Version

Cette traduction française correspond à la version anglaise distribuée avec perl 5.8.8. Pour en savoir plus concernant ces traductions, consultez http://perl.enstimac.fr/.

Traducteur

Marc Carmier <carmier@immortels.frmug.org>. Paul Gaborit <paul.gaborit at enstimac.fr> (mise à jour).

Relecture

Pascal Ethvignot <pascal@encelade.frmug.org>