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

Administration système Discussion :

grep pour rechercher un "^M"


Sujet :

Administration système

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de speedev
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 051
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 051
    Par défaut grep pour rechercher un "^M"
    Bonjour,

    J'ai ce caractère "^M" présent quelque part dans un de mes fichiers de dev, je ne parviens pas à le trouver bien que j'ai ouvert tous mes fichiers via shell pour le repérer (trop de fichiers, trop de lignes).

    Je veux passer par la commande grep pour gagner du temps mais je ne parviens pas à trouver la syntaxe correcte de la commande à cause du "^" qui s'inscrit forcément en expr régulière.

    Merci pour le coup de pouce !

  2. #2
    Membre très actif

    Homme Profil pro
    Responsable projets techniques
    Inscrit en
    Février 2003
    Messages
    980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable projets techniques
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Février 2003
    Messages : 980
    Par défaut
    Tu peux utiliser les commandes suivantes:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    grep ^M <fichier>
    grep -n $'\r' <fichier>
    grep -n $'\x0d' <fichier>
    (le ^M se faisant par Ctrl+V Ctrl+M)

    Mais après test, il s'avère que ça n'affiche pas la ligne complète (je ne sais pas pourquoi ).

    Si tu as perl, ceci marchera mieux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    perl -n -e' print if (/\r/)' <fichier>
    Sinon, awk peut faire pareil :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    awk '/\r/ {print}' <fichier>
    Y a sûrement d'autres moyens

  3. #3
    Membre très actif

    Homme Profil pro
    Responsable projets techniques
    Inscrit en
    Février 2003
    Messages
    980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable projets techniques
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Février 2003
    Messages : 980
    Par défaut
    Par contre, si tu veux trouver dans quel fichier le ^M se trouve, tu peux utiliser grep :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    grep -lR ^M *
    grep -lR $'\r' *
    grep -lR $'\x0d' *
    (R pour récursif et toujours Ctrl+V Ctrl+M pour le ^M)

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