Codes sources Perl

Les codes sources Perl téléchargeables. N'hésitez pas en rajouter.
Ajouter un nouvel élément

    Vérification de date de création d'un fichier et suppression si vieux d'un mois.

    Licence : Autre - 28/08/2012 - Téléchargé 3 x
    Ce script va permettre de lister des fichiers dans un dossier.
    Il va ensuite récupèrer les dates de création du fichier, formater le format de la date.
    Les dates seront ensuite comparées à la date actuelle.
    Les fichiers vieux d'un mois seront supprimés.

    Comment convertir un fichier Excel en fichier csv ou txt ?

    Licence : Gratuit - 31/05/2011 - Téléchargé 2 x
    Le code ci-dessous permet de convertir un fichier excel 2007 (ou antérieur) en fichier txt, csv ou autre fichier plat.

    Le choix du séparateur est laissé à l'utilisateur.
    Si l'on on précise un répertoire, le fichier convertit sera créé dans ce dernier, sinon, il sera créé dans le même répertoire que le fichier excel.
    On peut choisir de convertir toutes les feuilles ou non du fichier excel en mettant -feuilles à 1 => tout sera convertit, ou à 0 et dans ce cas, à chaque feuille une confirmation sera demandée.

    Attention : Nous avons utilisé ici la méthode print {$fh} $oWkC->Value, $Separateur;

    Mais cette méthode peut nous générer des erreurs inattendues :
    explication documentation o ... Voir la suite

    Comment fusionner plusieurs classeurs Excel d'un répertoire en un unique fichier ?

    Licence : Gratuit - 31/05/2011 - Téléchargé 2 x
    Ce code vous permettra de fusionner plusieurs classeur Excel (xls, xlsx) en un unique fichier Excel (xls). Il copie toutes les feuilles des différents classeurs dans un seul fichier. Le seul inconvénient est qu'il ne garde pas les noms des feuilles mais en génère automatiquement (feuille1, 2, 3, ...) et les formats des cellules ne sont pas conservés.

    Vous aurez besoin d'installer les modules

    Spreadsheet::ParseExcel
    Spreadsheet::XLSX
    Spreadsheet::WriteExcel

    Les modules Getopt::Long et Pod::Usage sont dans le core de Perl.



    Pour savoir comment lancer le programme, faites

    perl nom_programme.pl -help

    ou

    perl nom_programme.pl -man

    Comment connaitre le nom et l'ip d'une machine en perl ?

    Licence : Gratuit - 31/05/2011 - Téléchargé 2 x
    Pas de secret, le CPAN contient ce qu'il faut. Utilisez les modules Sys::Hostname et Socket déjà présent dans le CORE de perl.

    Comment récupérer proprement les arguments de la ligne de commande ?

    Licence : Gratuit - 30/06/2011 - Téléchargé 1 x
    Lorsque vous souhaitez appeler vos scripts perl via une console DOS ou Linux (ou Unix), vous avez souvent besoin de passer des arguments. La manière classique pour les récupérer est d'utiliser la variable @ARGV. Sachez qu'il existe un module perl nous permettant de gérer ces arguments proprement et facilement. Ce module est de plus déjà installé dans le core de perl, c'est le module en Getopt::Long. Le code à télécharger ci-dessous nous permet de taper en ligne de commande perl script.pl -name djibril -fichier "C:\repertoire\fichier.txt" -fichier "D:\repertoire\fichier2.txt" -numero 2 -v.

    N.B. : Notez l'importance de protéger le chemin de vos fichiers par des guillemets, surtout s'il y a des espaces. Vo ... Voir la suite

    Comment récupérer une page Web ?

    Licence : Gratuit - 31/05/2011 - Téléchargé 1 x
    Voici un script permettant de récupérer le contenu d'une page Web et l'afficher sur la sortie standard STDOUT. Il y a la possibilité de spécifier un proxy HTTP. Ainsi qu'un login pour les connexions HTTP (autorisation de base).

    Comment récupérer (proprement) les séquences d'un fichier fasta ?

    Licence : Gratuit - 31/05/2011 - Téléchargé 1 x
    Le but est de récupérer les identifiants et leur séquence une à une de façon simple et rapide grâce au module Bio::SeqIO. Fichier d'entrées :
    test.txt

    >A1
    GATACCAGCATCGTACGTCGTACGTACGTAGGGATCATTATGCCACATTCTGATCTTGGACCTGCATTATAGATCTGACTT
    >A2
    TACCACCCGATCTCGCATCGTCATGTGCGGGATCATTATGCACATTCTGATCTTGGACCTGCATTATAGATCTGACTT
    >B1
    GATACCAGCGGGATCATTATGCCACATTCTGATCTTGGACCTGATAGATCTGACT
    >B2
    GATACCAGCCACTTCTGACGATCGATCGATATTATAAAAGGATCATTATGCCACATTCTGATCgTGGACCTGCATTATAGATCTGCCCTT
    >C1
    GATACCAGCGGGATCATTATGCCACATTCTGATCTTGGACCTGCATTATAGATCTGACTT
    >C2
    GATACCAGCGGGATCCTTATGCCACATTCTGATCTTGGACCTGCATTATAGATCTGACTT

    Résultat

    >A1
    GATACCAGCATCGTACGTCGTACGTACGTAGGGA ... Voir la suite

    Comment mettre la première lettre de tous les mots d'une chaine en majuscule ou minuscule ?

    Licence : Gratuit - 31/05/2011 - Téléchargé 1 x
    L'utilisation des expressions régulière est plus appropriée.

    Comment connaitre le time depuis une date ( L'inverse de localtime et gmtime) ?

    Licence : Gratuit - 31/05/2011 - Téléchargé 1 x
    Il peut être utile de connaître le time d'une date, c'est l'inverse de time, localtime et gmtime. Cela se fait par exemple en php pour les connaisseurs via la fonction mktime. Comme d'habitude, il existe un module en Time::Local en perl déjà présent dans le CORE, donc pas besoin d'installation.

    Ce module posséde deux méthodes timelocal et timegm qui renvoient le time. Il faut leur donner 6 informations sous forme de tableau ($sec,$min,$hour,$mday,$mon,$year).

    Attention : $year sera bien l'année classique (avec + 1900), ex : 2007 et $mois sera compris entre 0 et 11 et non entre 1 et 12.

    Nous trouver le time des dates 01/01/2000 et 05/12/2008



    Vous pourrez maintenant jongler avec les tim ... Voir la suite

    Comment calculer le nombre de jours et/ou semaines entre deux dates ?

    Licence : Gratuit - 01/07/2011 - Téléchargé 1 x
    Vous souhaitez connaitre le nombre de jours (ou le nombre de semaines) entre deux dates, utilisez le module Date::Calc.

    Comment fusionner plusieurs fichier "csv" en un fichier Excel avec onglets ?

    Licence : Autre - 29/11/2011 - Téléchargé 1 x
    J'ai cherché sur internet pour faire cela mais sans succès. J'ai adapté ce que j'ai trouvé ici et là pour faire ce petit script (Je suis niveau débutant)

    Comment tourner de 90 degrés ou autres toutes les pages d'un fichier au format PDF

    Licence : Gratuit - 15/06/2011 - Téléchargé x
    Il peut être utile de devoir tourner un certain nombre de degrés les pages d'un PDF. Hors, tout le monde ne dispose pas d'Adobe Pro ou tout autre logiciel payant pour le faire.
    Voici un programme perl qui le fera pour vous aisément. Il utilise le module PDF::API2.

    Voici le mode d'emploi du programme :
    • perl programme.pl -i input_pdf -o output_pdf -r 90
    • perl programme.pl -i input_pdf -o output_pdf -r 45
    • ...



    script de backup recursif sur FTP avec upload uniquement des fichiers nouveaux ou modifiés

    Éditeur : ramislebob +
    But: Backup automatique d'un dossier sur un site FTP comme l'hébergement mutualisé OVH.
    - Afin de minimiser les uploads, seuls les fichiers modifiers seront uploader.
    - Comme via ftp on ne peut pas avoir le mtdm (date de derniere modification) pour un dossier, utilisation d'une base de données simple afin de stocker les fichiers avec leur taille et le mtdm local.
    - Comme on ne peut pas accéder la base de donnée directement de l'extérieur par mesure de sécurité, utilisation d'un wrapper HTTP simple utilisant la methode POST.


    Base de donnée et les 2 tables:
    2 tables:
    - backup_folder: pour stocker les chemins globaux des répertoires (et utiliser un id pour la table des fichiers)
    - ... Voir la suite

    script de backup recursif sur FTP avec upload uniquement des fichiers nouveaux ou modifiés (sans probleme d'affichage?..)

    Éditeur : ramislebob +
    But: Backup automatique d'un dossier sur un site FTP comme l'hébergement mutualisé OVH.
    - Afin de minimiser les uploads, seuls les fichiers modifiers seront uploader.
    - Comme via ftp on ne peut pas avoir le mtdm (date de derniere modification) pour un dossier, utilisation d'une base de données simple afin de stocker les fichiers avec leur taille et le mtdm local.
    - Comme on ne peut pas accéder la base de donnée directement de l'extérieur par mesure de sécurité, utilisation d'un wrapper HTTP simple utilisant la methode POST.


    Base de donnée et les 2 tables:
    2 tables:
    - backup_folder: pour stocker les chemins globaux des répertoires (et utiliser un id pour la table des fichiers)
    ... Voir la suite

    Comment utiliser des noms de fichiers ou répertoires portables ?

    Licence : Autre - 15/03/2012 - Téléchargé x
    La meilleure solution est de toujours utiliser le module Perl File::Spec qui est disponible dans le core de Perl.
    Vous n'aurez plus besoin de vous soucier de la plateforme sous laquelle le programme tournera.

    Convertir un code couleur RGB ou RVB en hexadécimal en Perl

    Licence : Gratuit - 20/05/2013 - Téléchargé x
    Voici un code Perl qui permet de convertir un code RVB ou RGB (pour les anglais) en hexadécimal 6-digits.

    Convertir un code couleur hexadécimal en RVB ou RGB en Perl

    Licence : Gratuit - 23/04/2014 - Téléchargé x
    Voici un code Perl qui permet de convertir un code hexadécimal 3-digits ou 6-digits en code RVB ou RGB (pour les anglais).

    Comment lister les adresses emails d'un fichier

    Licence : Gratuit - 30/06/2011 - Téléchargé x
    Ce code vous permet de lire un fichier passé en argument et liste les adresses emails s'y trouvant. Pour lancer ce programme, voici la commande à utiliser :
    perl test.pl -f fichier.txt

    Voilà, que pensez-vous de ce programme, vous a-t-il aidé ?

    Générer un arbre taxonomique sous freemind depuis la base NCBI

    Licence : GPL - 04/08/2015 - Téléchargé x
    Petit script pour générer le fichier freemind contenant les taxons indiqués en paramètre...

    Il faut une base mysql en local avec les données du NCBI .
    http://linnaeus.zoology.gla.ac.uk/~rpage/tbmap/downloads/ncbi/

    Comment faire un sleep de moins d'une seconde ?

    Licence : Gratuit - 31/05/2011 - Téléchargé x
    Pour faire un sleep de moins d'une seconde, il est recommandé d'utiliser le module Time::HiRes qui est disponible dans le core.
    Mais vous pouvez être encore beaucoup plus précis. A vous de jouer avec ce module très puissant.

31 éléments

Responsable bénévole de la rubrique Perl : djibril -