URL: https://linuxfr.org/forums/programmation-shell/posts/ajouter-dans-un-serveur-ldap-les-destinataires-d-un-mail Title: ajouter dans un serveur ldap les destinataires d'un mail Authors: Babelouest Date: 2012年06月22日T04:34:04+02:00 Tags: ldap, bash et regex Score: 0 Afin de pallier l'impossibilité d'écrire dans un annuaire LDAP avec Thunderbird, j'essaye de le faire à la main directement depuis mon serveur. Mes mails sont au format MAILDIR, donc un fichier par mail. Pour les récupérer, pas de soucis. Ne garder que les lignes qui m'intéressent, pas trop de problèmes non plus. Par contre, isoler les adresses mails de l'entête puis les passer dans une commande ldapadd, là ca coince. Ca c'est une ligne To: d'un mail : To: "une personne" , une autre personne , encore, quelqu'un J'ai essayé de faire ca propre, en utilisant même un outil qui s'appelle [mu](http://code.google.com/p/mu0/) avec lequel je peux reformatter les destinataires To, CC et BCC sur une ligne chacun, mais arrivé au découpage sans me casser les dents est trop difficile pour moi, je ne connais pas assez perl ou sed ou encore les expressions régulières. J'ai essayé de coder un petit programme en C qui à partir d'une ligne _To: blabla..._ à le découper plus proprement en une adresse par ligne, mais si j'essaye de passer en paramètre la sortie à un autre programme, il me le sert mal. Exemple : for e in `mon_programme_de_decoupage "\"une personne\" , une autre personne , encore, quelqu'un "` do echo $e done me sortira "une personne" [etc.] alors que la commande _mon_programme_de_decoupage "\"une personne\" , une autre personne , encore, quelqu'un "_ me sort "une personne" une autre personne encore, quelqu'un Bref, je suis bloqué là, est-ce que quelqu'un pourrait me sortir de là en m'expliquant où pèche mon for e in, ou m'expliquer comment faire pour que chaque ligne de la sortie dudit programme soit prise toute entière avec les espaces dans le ldapadd, ou sinon me donner une autre méthode sûrement plus simple pour ce genre de truc ? Merci d'avance

AltStyle によって変換されたページ (->オリジナル) /