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 et expressions régulières


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 18
    Par défaut Sed et expressions régulières
    Bonjour,

    Je voudrais remplacer toutes les lignes du fichier /etc/ssh/sshd_config qui commencent par:
    PermitRootLogin
    ou
    #PermitRootLogin
    ou
    # PermitRootLogin

    par
    PermitRootLogin yes

    J'ai essayé ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    sed -i '/^PermitRootLogin|^#PermitRootLogin|^# PermitRootLogin/c\PermitRootLogin yes' /etc/ssh/sshd_config
    mais ça ne marche (c'est le | qui n'a pas l'air de fonctionner)
    Une idée ?
    Merci d'avance

    PS: je ne suis pas très fort en expressions régulières

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $ cat plop 
    Bonjour,
     
    Je voudrais remplacer toutes les lignes du fichier /etc/ssh/sshd_config qui commencent par:
    PermitRootLogin
    ou
    #PermitRootLogin
    ou
    # PermitRootLogin
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $ sed 's/^[# ]*\(PermitRootLogin\)$/\1 yes/' plop 
    Bonjour,
     
    Je voudrais remplacer toutes les lignes du fichier /etc/ssh/sshd_config qui commencent par:
    PermitRootLogin yes
    ou
    PermitRootLogin yes
    ou
    PermitRootLogin yes
     
    $

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 18
    Par défaut
    OK c'est parfait, merci beaucoup,
    Réponse claire, précise et rapide!

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 25/09/2014, 20h41
  2. [sed] Expression régulière pour remplacer les emails
    Par ben.IT dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 11/01/2013, 14h44
  3. Expressions régulières avec SED
    Par ldiaz dans le forum Shell et commandes GNU
    Réponses: 11
    Dernier message: 27/04/2012, 10h03
  4. Aide pour une expression régulière avec sed
    Par Loceka dans le forum Administration système
    Réponses: 4
    Dernier message: 05/10/2011, 10h48
  5. Problème de sed et expression régulière
    Par Empty_body dans le forum Linux
    Réponses: 11
    Dernier message: 12/03/2009, 10h15

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