Projet de script [Fermé]

Signaler
Messages postés
3
Date d'inscription
mercredi 15 novembre 2017
Statut
Membre
Dernière intervention
3 décembre 2017
-
Messages postés
3
Date d'inscription
mercredi 15 novembre 2017
Statut
Membre
Dernière intervention
3 décembre 2017
-
Bonjour,

Je viens vers vous pour avoir de l'aide sur un projet de scripting en Perl qui va tourner sous AIX, ne maitrisant pas du tout je viens vous redemander de l'aide.

Mon fichier de paramètre ressemble a :

c:\fichiers\test\test1.txt;test1@yopmail.com
c:\fichiers\test\test2.txt;test2@yopmail.com
c:\fichiers\test\test3.txt;test3@yopmail.com
c:\fichiers\test\test4.txt;test4@yopmail.com,test5@yopmail.com

Mon script ressemble a :
#!/usr/opt/perl5/bin/perl

use lib "/usr/opt/perl5/lib64/5.8.8";
use File::Copy
use Mail::Sendmail

# Fichier de paramètre contenant le chemin du fichier ainsi que ses destinataires
$fp = "c:\fichiers_destinataires" ;

# Valeurs des champs séparé par un point virgule :
# 0: Chemin des fichiers a transferer
# 1: Mail des destinataires selon les fichiers

# Dossier de sauvegarde des fichiers envoyés
$ds = "c:\dossier_sauvegarde" ;

#Ouverture du fichier
with open($fp) as f :

#Lecture du fichier ligne par ligne
for line in f :

#Dès qu'un fichier existe et qu'il n'est pas vide il est envoyé par mail a sa liste de destinataires
do pour_les_fichiers_qui_existe_en_parametre_1_de_$fp et_qui_sont_pas_vide
{
%mail = (to   =>  parametre_1_de_$fp
      from  =>  serveur@yopmail.com
             subject   =>  Fichiers
      message =>  Les fichiers demandés
      attach  =>  parametre_0_de_$fp
     );
}

#Déplace les fichiers envoyés vers un dossier de sauvegarde
foreach les_fichiers_qui_ont_ete_envoyés
{
move(les_fichiers_qui_ont_ete_envoyés, $ds);
}
close

Il me manque pas mal de chose...

Merci pour votre temps par avance.

THENab

EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).

Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.
Jordane45

2 réponses

Messages postés
32452
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 mai 2021
3 484
Bonjour,

Oui il te manque des choses dans ton script ... mais.. à toi de nous indiquer quoi exactement.

Je suppose déjà que tu souhaites savoir comment récupérer le nom du fichier puis les adresses mail.....
Pour ça.. rien de plus simple : SPLIT
https://perlmaven.com/perl-split

Voici un exemple de lecture d'un fichier csv :
https://perlmaven.com/how-to-read-a-csv-file-using-perl

Et voici comment envoyer un mail en perl
https://www.perlmonks.org/?node_id=19430



1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
3
Date d'inscription
mercredi 15 novembre 2017
Statut
Membre
Dernière intervention
3 décembre 2017

Bonjour,

Merci pour les conseils et la réponse, effectivement je ne savais pas comment récupérer les passages que j'ai mis en français espacé par les "_". On m'a conseillé de la lecture pour débutant sur Perl. Je reviendrais vers vous après lecture et avec un script un peu plus avancé je l'espère.

Cordialement.