IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Création script de configuration


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Tofdu31
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Octobre 2016
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2016
    Messages : 93
    Par défaut Création script de configuration
    Bonjour / Bonsoir tous,

    Je suis en train de créer un script pour modifier mon fichier qui s'appelle : axis2.xml (fichier attaché dans ce post)

    A l'interieur, j'ai des lignes à modifier

    Lignes actuelles :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
        <!-- Uncomment and configure the SMTP server information
        check com.sun.mail.smtp package documentation for descriptions of properties
        <transportSender name="mailto" class="org.apache.axis2.transport.mail.MailTransportSender">
            <parameter name="mail.smtp.host">smtp.gmail.com</parameter>
            <parameter name="mail.smtp.port">587</parameter>
            <parameter name="mail.smtp.starttls.enable">true</parameter>
            <parameter name="mail.smtp.auth">true</parameter>
            <parameter name="mail.smtp.user">synapse.demo.0</parameter>
            <parameter name="mail.smtp.password">mailpassword</parameter>
            <parameter name="mail.smtp.from">synapse.demo.0@gmail.com</parameter>
        </transportSender>-->
    Résultat à obtenir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
        <!-- Uncomment and configure the SMTP server information
        check com.sun.mail.smtp package documentation for descriptions of properties
        <transportSender name="mailto" class="org.apache.axis2.transport.mail.MailTransportSender">
            <parameter name="mail.smtp.host">SERVEUR-MESSAGERIE</parameter>
            <parameter name="mail.smtp.port">587</parameter>
            <parameter name="mail.smtp.starttls.enable">true</parameter>
            <parameter name="mail.smtp.auth">true</parameter>
            <parameter name="mail.smtp.user">server@domaine.com</parameter>
            <parameter name="mail.smtp.password">mon_password</parameter>
            <parameter name="mail.smtp.from">no-reply@domaine.com</parameter>
        </transportSender>-->
    Pour cela, j'utilise le script suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    #!/usr/bin/env bash
     
    clear
     
    echo " --------------------------------------------------- -------------"
    echo " -        PARAMETRAGE SERVEUR MESSAGERIE POUR WSO2IOT 3.1.0      -"
    echo " --------------------------------------------------- -------------"
     
    dir_wso2iot=$(dirname $PWD/wso2iot*/conf)
    mail_smtp_host="${1}"
    mail_smtp_port="${2}"
    mail_smtp_auth="${3}"
    mail_smtp_user="${4}"
    mail_smtp_password="${5}"
    mail_smtp_from="${6}"
     
    dir_wso2iot=$(dirname $PWD/wso2iot*/conf)
     
     
    echo ""
    echo "Votre répertoire d'installation est : ${dir_wso2iot}"
    echo ""
     
    #--------------------
    # Parametrage mail.smtp.host
    if [ "${mail_smtp_host}" == "" ]; then
        mail_smtp_host='SERVEUR-MESSAGERIE'
    fi
     
    #--------------------
    # Parametrage mail.smtp.port
    if [ "${mail_smtp_port}" == "" ]; then
        mail_smtp_port='587'
    fi
     
    #--------------------
    # Parametrage mail.smtp.auth
    if [ "${mail_smtp_auth}" == "" ]; then
        mail_smtp_auth='true'
    fi
     
     
    #--------------------
    # Parametrage mail.smtp.user
    if [ "${mail_smtp_user}" == "" ]; then
        mail_smtp_user="server@domaine.com"
    fi
     
     
    #--------------------
    # Parametrage mail.smtp.password
    if [ "${mail_smtp_password}" == "" ]; then
        mail_smtp_password='mon_password'
    fi
     
     
    #--------------------
    # Parametrage mail.smtp.from
    if [ "${mail_smtp_from}" == "" ]; then
        mail_smtp_from="no-reply@domaine.com"
    fi
     
    echo ""
    echo "Nom de votre serveur : "${mail_smtp_host}
     
    echo ""
    echo "Port de votre serveur : "${mail_smtp_port}
     
    echo ""
    echo "Parametrage authentification à : "${mail_smtp_auth}
     
    echo ""
    echo "Login authentification serveur messagerie : "${mail_smtp_user}
     
    echo ""
    echo "Password authentification serveur messagerie : "${mail_smtp_password}
     
    echo ""
    echo "Les mails seront envoyé par : "${mail_smtp_from}
     
     
    PS3='> '   # le prompt
    echo ""
    echo ""
    echo "La configuration est-elle correcte ?"
    LISTE=("[y] yes" "[n]  no")  # liste de choix disponibles
    select CHOIX in "${LISTE[@]}" ; do
        case $REPLY in
            1|y)
            echo ""
            echo "ok"
            break
            ;;
            2|n)
            echo ""
            echo "Configurer le script pour mettre vos parametrages !"
            exit
            ;;
        esac
    done
     
    echo ""
    echo ""
    echo " ----------------------------------------------------------------- "
    echo " -        CONFIGURATION FICHIER <Iot_Home>/conf/axis2/axis2.xml  - "
    echo " ----------------------------------------------------------------- "
    echo ""
     
    perl -pi -e "s/    check com.sun.mail.smtp package documentation for descriptions of properties/    check com.sun.mail.smtp package documentation for descriptions of properties -->/g" ${dir_wso2iot}/conf/axis2/axis2.xml
    sed -i '\#mail.smtp.from">synapse.demo.0@gmail.com#{n;s#-->##}' ${dir_wso2iot}/conf/axis2/axis2.xml
    perl -pi -e "s/smtp.gmail.com/${mail_smtp_host}/g" ${dir_wso2iot}/conf/axis2/axis2.xml
    perl -pi -e "s/synapse.demo.0/"${mail_smtp_user}"/g" ${dir_wso2iot}/conf/axis2/axis2.xml
    perl -pi -e "s/mailpassword/${mail_smtp_password}/g" ${dir_wso2iot}/conf/axis2/axis2.xml
    perl -pi -e "s/synapse.demo.0@gmail.com/"${mail_smtp_from}"/g" ${dir_wso2iot}/conf/axis2/axis2.xml
     
     
    echo "Completed!!"
     
     
    echo ""
    echo ""
    echo " ------------------------------------------------------------------------ "
    echo " -     CONFIGURATION FICHIER <Iot_Home>/conf/output-event-adapters.xml  - "
    echo " ------------------------------------------------------------------------ "
    echo ""
    echo "Completed!!"
     
     
     
     
    echo ""
    echo ""
    echo " --------------------------------------------------------------------------- "
    echo " -    CONFIGURATION FICHIER <Iot_Home>/wso2/analytics/conf/axis2/axis2.xml - "
    echo " --------------------------------------------------------------------------- "
    echo ""
    echo "Completed!!"
     
     
     
     
     
    echo ""
    echo ""
    echo " ---------------------------------------------------------------------------------- "
    echo " - CONFIGURATION FICHIER <Iot_Home>/wso2/analytics/conf/output-event-adapters.xml - "
    echo " ---------------------------------------------------------------------------------- "
    echo ""
    echo "Completed!!"
     
     
     
    echo ""
    echo ""
    echo " --------------------------------------------------------------------- "
    echo " - CONFIGURATION FICHIER <Iot_Home>/wso2/broker/conf/axis2/axis2.xml - "
    echo " --------------------------------------------------------------------- "
    echo ""
    echo "Completed!!"
     
     
     
     
     
    echo ""
    echo ""
    echo " ------------------------------------------------------------------------------------------------- "
    echo " -  CONFIGURATION FICHIER <Iot_Home>/repository/resources/profiles/keymanager/axis2/axis2.xml    - "
    echo " ------------------------------------------------------------------------------------------------- "
    echo ""
    echo "Completed!!"
     
     
     
    echo ""
    echo ""
    echo " ------------------------------------------------------------------------------------------- "
    echo " - CONFIGURATION FICHIER <Iot_Home>/repository/resources/profiles/manager/axis2/axis2.xml  - "
    echo " ------------------------------------------------------------------------------------------- "
    echo ""
    echo "Completed!!"
    Au final, j'ai 2 lignes qui ne sont pas pris en compte. Les lignes suivantes sont avant le lancement du script :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <parameter name="mail.smtp.user">synapse.demo.0</parameter>
    <parameter name="mail.smtp.from">synapse.demo.0@gmail.com</parameter>
    Elles deviennent après le lancement du script :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <parameter name="mail.smtp.user">server.com</parameter>
    <parameter name="mail.smtp.from">server.com@gmail.com</parameter>
    BILAN :
    Alors que les variables s'affiches correctement au démarage de mon script pour valider la bonne prise en considération, je ne comprends pas pourquoi lors de la modification, les informations sont tronquées.

    J'ai relativement détaillé le script car je débute un peu dans le domaine et je le construit en rapport à des informations glanées sur le net ou premières expériences de script déjà en place..

    Merci et au plaisir de vous lire

    Tof
    Fichiers attachés Fichiers attachés

  2. #2
    Expert confirmé Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 041
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 041
    Par défaut
    la version courte du code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    perl -pi -e "s/    check com.sun.mail.smtp package documentation for descriptions of properties/    check com.sun.mail.smtp package documentation for descriptions of properties -->/g" ${dir_wso2iot}/conf/axis2/axis2.xml
    sed -i '\#mail.smtp.from">synapse.demo.0@gmail.com#{n;s#-->##}' ${dir_wso2iot}/conf/axis2/axis2.xml
    perl -pi -e "s/smtp.gmail.com/${mail_smtp_host}/g" ${dir_wso2iot}/conf/axis2/axis2.xml
    perl -pi -e "s/synapse.demo.0/"${mail_smtp_user}"/g" ${dir_wso2iot}/conf/axis2/axis2.xml
    perl -pi -e "s/mailpassword/${mail_smtp_password}/g" ${dir_wso2iot}/conf/axis2/axis2.xml
    perl -pi -e "s/synapse.demo.0@gmail.com/"${mail_smtp_from}"/g" ${dir_wso2iot}/conf/axis2/axis2.xml
    et ce qui pose problème ce sont les lignes 4 et 6, je propose de les inverser...

    edit: tiens, en une commande et en mixant le MAIL_USER_FROM avec la suppression du commentaire, et sans faire d'édition inplace (on conserve le fichier qui sert de template):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    sed -e '
       s/check com.sun.mail.smtp package documentation for descriptions of properties/& -->/
       /mail.smtp.from">synapse.demo.0@gmail.com/{s/synapse.demo.0@gmail.com/MAIL_SMTP_FROM/;n;s/-->//}
       s/smtp.gmail.com/MAIL_SMTP_HOST/
       s/mailpassword/MAIL_SMTP_PASSWORD/
       s/synapse.demo.0/MAIL_SMTP_USER/
    ' axis2.xml > nouveau_fichier.xml

  3. #3
    Membre chevronné
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2013
    Messages : 563
    Par défaut
    En reprenant la commande de BufferBob, perso je ferais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    sed -e "
       s/check com.sun.mail.smtp package documentation for descriptions of properties/& -->/
       /mail\.smtp\.from./{/mail\.smtp\.from/ s#>[^<]*<#>${mail_smtp_from}<#;n;s/-->//}
       /mail\.smtp\.host/ s#>[^<]*<#>${mail_smtp_host}<#
       /mail\.smtp\.port/ s#>[^<]*<#>${mail_smtp_port}<#
       /mail\.smtp\.auth/ s#>[^<]*<#>${mail_smtp_auth}<#
       /mail\.smtp\.user/ s#>[^<]*<#>${mail_smtp_user}<#
       /mail\.smtp\.password/ s#>[^<]*<#>${mail_smtp_password}<#
    " axis2.xml > nouveau_fichier.xml
    car se baser sur les valeurs n'est pas forcement fiable, il suffit qu'elles changent pour que ça fonctionne plus.
    là ça lui permet de modifier un fichier déjà modifié :p

  4. #4
    Membre confirmé Avatar de Tofdu31
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Octobre 2016
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2016
    Messages : 93
    Par défaut
    Merci à vous deux, ça fonctionne.

    Au final, voici ce que j'ai mis dans mon script, ça pourra servir pour certains lecteurs peut-étre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    sed -i -e "
       s/check com.sun.mail.smtp package documentation for descriptions of properties/& -->/
       /mail\.smtp\.from./{/mail\.smtp\.from/ s#>[^<]*<#>${mail_smtp_from}<#;n;s/-->//}
       /mail\.smtp\.host/ s#>[^<]*<#>${mail_smtp_host}<#
       /mail\.smtp\.port/ s#>[^<]*<#>${mail_smtp_port}<#
       /mail\.smtp\.auth/ s#>[^<]*<#>${mail_smtp_auth}<#
       /mail\.smtp\.user/ s#>[^<]*<#>${mail_smtp_user}<#
       /mail\.smtp\.password/ s#>[^<]*<#>${mail_smtp_password}<#
    " ${dir_wso2iot}/conf/axis2/axis2.xml
    Encore merci pour votre soutien et accompagnement pour nous les débutants

    Tof

  5. #5
    Membre confirmé Avatar de Tofdu31
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Octobre 2016
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2016
    Messages : 93
    Par défaut
    Je reviens au final car sur la modification d'autres fichiers, je n'arrive pas à le mettre en place.
    Dans un fichier output-event-adapters.xml, voici ce que j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
        <adapterConfig type="email">
            <!-- Comment mail.smtp.user and mail.smtp.password properties to support connecting SMTP servers which use trust
            based authentication rather username/password authentication -->
            <property key="mail.smtp.from">abcd@gmail.com</property>
            <property key="mail.smtp.user">abcd</property>
            <property key="mail.smtp.password">xxxx</property>
            <property key="mail.smtp.host">smtp.gmail.com</property>
            <property key="mail.smtp.port">587</property>
            <property key="mail.smtp.starttls.enable">true</property>
            <property key="mail.smtp.auth">true</property>
            <!-- Thread Pool Related Properties -->
            <property key="minThread">8</property>
            <property key="maxThread">100</property>
            <property key="keepAliveTimeInMillis">20000</property>
            <property key="jobQueueSize">10000</property>
        </adapterConfig>
    Je n'ai pas de souci de commentaire à supprimer mais j'essaye de mettre en place juste la modification.

    J'en tenté ceci mais en vain :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    echo ""
    echo ""
    echo " ------------------------------------------------------------------------ "
    echo " -     CONFIGURATION FICHIER <Iot_Home>/conf/output-event-adapters.xml  - "
    echo " ------------------------------------------------------------------------ "
    echo ""
     
    sed -e "
       s/mail\.smtp\.host/ s#>[^<]*<#>${mail_smtp_host}<# /
       /mail\.smtp\.port/ s#>[^<]*<#>${mail_smtp_port}<#
       /mail\.smtp\.auth/ s#>[^<]*<#>${mail_smtp_auth}<#
       /mail\.smtp\.user/ s#>[^<]*<#>${mail_smtp_user}<#
       /mail\.smtp\.password/ s#>[^<]*<#>${mail_smtp_password}<#
    " ${dir_wso2iot}/conf/output-event-adapters.xml > ${dir_wso2iot}/conf/output-event-adapters.xml_nouveau_fichier.xml
    echo "Completed!!"
    Merki

  6. #6
    Membre chevronné
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2013
    Messages : 563
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    sed -e "
       /mail\.smtp\.host/ s#>[^<]*<#>${mail_smtp_host}<#
       /mail\.smtp\.port/ s#>[^<]*<#>${mail_smtp_port}<#
       /mail\.smtp\.auth/ s#>[^<]*<#>${mail_smtp_auth}<#
       /mail\.smtp\.user/ s#>[^<]*<#>${mail_smtp_user}<#
       /mail\.smtp\.password/ s#>[^<]*<#>${mail_smtp_password}<#
    " ${dir_wso2iot}/conf/output-event-adapters.xml > ${dir_wso2iot}/conf/output-event-adapters.xml_nouveau_fichier.xml
    normalement ça devrait passer...
    y a un s et un / qui se baladaient sur la 1ere ligne

Discussions similaires

  1. Script qui configure le wifi
    Par cem40 dans le forum Windows
    Réponses: 6
    Dernier message: 10/12/2011, 17h02
  2. [JACL] script de configuration WAS 5.1
    Par screenvlf dans le forum Websphere
    Réponses: 2
    Dernier message: 12/04/2007, 11h09
  3. création script korn shell de recopie de fichiers
    Par jeje4 dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 29/03/2007, 07h38
  4. [DOS-BATCH] Création script modif arborescence
    Par stygre dans le forum Windows
    Réponses: 2
    Dernier message: 19/07/2006, 14h02
  5. Script de configuration
    Par manudja dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 27/04/2006, 17h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo