Partage
  • Partager sur Facebook
  • Partager sur Twitter

Script de Changement de date

    17 septembre 2019 à 10:47:23

    Bonjour ! J'ai un petit problème et j'ai besoin de votre aide

    Fichier (hyb.txt) à modifier

    ---Table call  CREATE TABLE EPPIX.call_hyb**20180301**_bkp**20180301** AS SELECT * FROM EPPIX.call_hyb**20180301**; ---Table bill  CREATE TABLE EPPIX.bill_hyb**20180301**_bkp**20180301** AS SELECT * FROM EPPIX.bill_hyb**20180301**; ---Table GPRS CREATE TABLE EPPIX.gprs_hyb**20180301**_bkp**20180301** AS SELECT * FROM EPPIX.gprs_hyb**20180301**; ---Table CYCLE CREATE TABLE EPPIX.cycle**20180301**_bkp**20180301** AS SELECT * FROM EPPIX.cycle; --vider les tables bill , call et GPRS  TRUNCATE TABLE EPPIX.bill_hyb**20180301**; TRUNCATE TABLE EPPIX.gprs_hyb**20180301**; TRUNCATE TABLE EPPIX.call_hyb**20180301**; ---------------------------------------Mise à jour date ----- UPDATE eppix.VSM_SERVICE_MSISDN SET vsm_billed_upto = TO_DATE(**'2018-02-28','YYYY-MM-DD'**)-- Update here last day of month WHERE vsm_subscriber_id IN( Select distinct sbd_subscriber_id from eppix.sbd_sub_dets ,vas_active_service vas Where vas_subscriber_id =sbd_subscriber_id and sbd_bill_cycle='HYB' and vas_sub_charge1 is not null and vas_sub_charge1 != ' '); commit; ----------------------------------------Mise à jour service SPD update vas_active_service set vas_sub_charge1=vas_service_code where vas_service_code like 'SPD%' and vas_service_code!=vas_sub_charge1 commit;

    et voici mon script (maj.sh) qui me permet de modifier mon fichier (hyb.txt)

    #!/bin/sh Datedudernierjourdumoisprecedent =$(date --date "today - $(date +%d) days" +%Y-%m-%d) Datedupremierjourdumoisencours =$(date +%Y%m01) sed -i 's/20180301/'$Datedupremierjourdumoisencours'/g' hyb.txt; sed -i 's/2018-02-28/'$Datedudernierjourdumoisprecedent'/g' hyb.txt;

    Je ne veux plus plaquer mes dates(20180301 et 2018-02-28) comme je le faisais dans mon script au dessus, mais je veux les affecter à des variables.
    Là lorsque les dates changeront, je n'aurai plus à mettre encore les dates qui ont changé dans mon script mais les variables qui les contiennent.
    Merci d'avance à vous.

    Cordialement.

    -
    Edité par AbcAbc6 17 septembre 2019 à 17:28:51

    • Partager sur Facebook
    • Partager sur Twitter
      17 septembre 2019 à 15:37:04

      salut,

      à quel moment ?

      • Partager sur Facebook
      • Partager sur Twitter

      Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique

        17 septembre 2019 à 17:14:58

        Salut dantonq ! Merci pour ta réponse.

        Au fait je voudrais par mon script (maj.sh) que tu vois tout en haut changer les dates (20180301 et 2018-02-28) qui se trouve dans mon fichier (hyb.txt) tout au début. Avant, lorsque je le faisais, je plaquais mes dates comme tu le vois dans le script tout en haut. Mais maintenant, je ne veux plus plaquer mes dates à chaque fois qu'elles change mais je veux attribuer leur format à des variables de sorte qu'après je me serve de ces variables pour changer mes dates à chaque années ou mois qui se présenterais.

        J'espère que j'ai été explicite dans mes dires et que vous me compreniez afin de me venir en aide.

        Merci d'avance à vous et bon après-midi

        Cordialement,

        • Partager sur Facebook
        • Partager sur Twitter
          17 septembre 2019 à 17:32:25

          Bonjour, j'ai supprimé votre sous-titre pour le placer dans le titre affin que le sujet soit plus clair dans la liste du forum et lors d'une future recherche.

          Merci de faire attention la prochaine fois. ;)

          • Partager sur Facebook
          • Partager sur Twitter
            17 septembre 2019 à 19:37:25

            je ne suis pas certain que ce soit nécessaire.

            il faut modifier ce qui correspond aux motifs (8 chiffres, ou 4 chiffres un tiret 2 chiffres un tiret deux chiffres) entre deux **

            -
            Edité par dantonq 17 septembre 2019 à 19:48:48

            • Partager sur Facebook
            • Partager sur Twitter

            Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique

              19 septembre 2019 à 10:38:06

              Bonjour dantonq ! 

              Je ne comprends ce que vous voulez dire. Vous pouvez être plus explicite s'il vous plait Merci.

              Cordialement,

              • Partager sur Facebook
              • Partager sur Twitter
                19 septembre 2019 à 14:39:14

                au lieu de chercher à récupérer les dates dans le fichier à modifier, puis construire une expression sed pour modifier ce fichier,

                tu peux chercher les motifs et modifier le fichier directement avec sed en utilisant une regex.

                $ cat fichierAmodifier
                0123abc0123
                456ABC456
                78mlk78
                $ sed -i 's/[aA]bB][cC]/remplacement/g'
                $ cat fichierAmodifier
                0123remplacement0123
                456remplacement456
                78mlk78



                • Partager sur Facebook
                • Partager sur Twitter

                Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique

                  19 septembre 2019 à 19:10:30

                  Merci dantonq je vais essayer et te revenir.
                  • Partager sur Facebook
                  • Partager sur Twitter

                  Script de Changement de date

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown