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 :

[SED] : Supprimer chaine de caractère


Sujet :

Shell et commandes GNU

  1. #1
    Membre actif
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Décembre 2006
    Messages
    1 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 080
    Points : 287
    Points
    287
    Par défaut [SED] : Supprimer chaine de caractère
    Bonjour,

    Me revoilà encore avec une question avec SED. Décidément je n'y arriverai jamais à le faire fonctionner malgré vos exemples.

    Dans un fichier :

    blablabla
    # Synchronisation des utilisateurs toutes les 5 mins
    0,5,10,15,20,25,30,35,40,45,50,55 * * * * sh /synchro_users/synchro_users.sh
    blablabla
    J'aimerai supprimer ces deux chaines de caractère présent dans le fichier, mais comment faire ?

    Merci d'avance.

  2. #2
    Membre averti
    Homme Profil pro
    Gérant infopsylon
    Inscrit en
    Juin 2010
    Messages
    215
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Gérant infopsylon
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2010
    Messages : 215
    Points : 328
    Points
    328
    Par défaut
    Bonjour,

    Essais avec ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    cat <mon_fichier>| sed  -e '/Synchronisation/{;s/^.*$//;n;s/^.*$//;};};' | grep -v -e '^$'
    L'idée de cette expression, c'est de vider la ligne contenant le commentaire spécifier par /Synchronisation/, et de vider la ligne suivante.

    Mais ce que tu as caché par blablabla, peut nous être utile pour définir une expression régulière.
    Si ca enlevait des lignes que tu souhaites conserver, il faut spécifier d'avantage la partie /Synchronisation/ par ce que tu trouves en commentaire.

    Aussi, si tu veux comparer le résultat avec le fichier original, enlèves le grep.

    Lilian.

  3. #3
    Membre actif
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Décembre 2006
    Messages
    1 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 080
    Points : 287
    Points
    287
    Par défaut
    ok merci.

    Avant de voir ta réponse j'avais trouvé une solution que voici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    sed -e '/\# Synchronisation des utilisateurs toutes les 5 mins/d' crontabfile > crontabfile- 
            cp /synchro_users/crontabfile- /synchro_users/crontabfile 
            rm -fr /synchro_users/crontabfile- 
     
            sed -e '/0,5,10,15,20,25,30,35,40,45,50,55 \* \* \* \* sh \/synchro_users\/synchro_users.sh/d' crontabfile > crontabfile- 
            cp /synchro_users/crontabfile- /synchro_users/crontabfile 
            rm -fr /synchro_users/crontabfile-

  4. #4
    Membre averti
    Homme Profil pro
    Gérant infopsylon
    Inscrit en
    Juin 2010
    Messages
    215
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Gérant infopsylon
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2010
    Messages : 215
    Points : 328
    Points
    328
    Par défaut
    Parfait, ça marche aussi

    Lilian.

  5. #5
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 552
    Points : 19 392
    Points
    19 392
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sed '/^\# Synchro.*5 mins/{N;d}' crontabfile > crontabfile-
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  6. #6
    Rédacteur/Modérateur
    Avatar de Winnt
    Homme Profil pro
    budget et contrôle de gestion
    Inscrit en
    Décembre 2006
    Messages
    1 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France

    Informations professionnelles :
    Activité : budget et contrôle de gestion
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 978
    Points : 4 130
    Points
    4 130
    Par défaut
    Salut,

    Pour éditer une crontab semble tout indiqué.
    Winnt
    Merci de lire les règles du forum LaTeX et Qu'est ce qu'un ECM ?.
    N'hésitez pas à parcourir la FAQ la réponse y est peut-être déjà.
    Pensez au bouton si votre problème est résolu.


    C'est en Linuxant qu'on devient .... geek
    Et c'est en LateXant qu'on devient flemmard
    Mon blog tout neuf.
    Articles : présentation de la distribution Gentoo, Les index sous LaTeX et leur personnalisation.

  7. #7
    Membre actif
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Décembre 2006
    Messages
    1 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 080
    Points : 287
    Points
    287
    Par défaut
    Citation Envoyé par Winnt Voir le message
    Salut,

    Pour éditer une crontab semble tout indiqué.
    sauf quand on fait du script...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [sed] Suppression chaine de caractère après une chaine fixe
    Par Fabiendst dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 14/01/2015, 20h59
  2. Supprimer chaine de caractères entre 2 balises
    Par wolfatthedoor dans le forum Requêtes
    Réponses: 0
    Dernier message: 01/04/2014, 00h47
  3. Supprimer chaine de caractères indefinie avec PHP
    Par Pierrot11 dans le forum Langage
    Réponses: 4
    Dernier message: 14/01/2014, 15h51
  4. supprimer chaine de caractère
    Par boboss123 dans le forum Débuter avec Java
    Réponses: 8
    Dernier message: 25/11/2009, 12h01
  5. supprimer chaine de caractère .bat
    Par maxeur dans le forum Windows
    Réponses: 2
    Dernier message: 24/04/2007, 10h48

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