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 :

Retour de chariot


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 gadj0dil0
    Profil pro
    Support technique
    Inscrit en
    Février 2007
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Support technique

    Informations forums :
    Inscription : Février 2007
    Messages : 133
    Par défaut Retour de chariot
    Bonjour

    Je vais essayer d'être clair. Alors, je passe un fichier par grep pour sortir dans un fichier uniquement les lignes contenant une occurrence.
    Lorsque que je veux ensuite remplacer les "retours de lignes", "retours chariot" ou "sauts verticaux" par un espace rien n'y fait, ni sed ni grep.


    Dans le terminal si je fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cat fichier | tr '\n' '\t'
    il ne m'affiche rien, si j'envoie "la sortie" vers un fichier-2 on y retrouve toutes les lignes mais avec une tabulation en début de ligne (sauf la première).

    J'ai testé en remplaçant par des espaces, des tabulations, des point virgules....

    Je n'envoie pas le code pour voir si vous détectez dans ma logique un truc qui cloche. Testé sur Ubuntu et Debian (Jessie), le script a le magic bash.
    Si besoin je répondrais avec le code.

    Merci de vos éclaircissement.

    PS : si je crée le fichier manuellement et que j'envoie le retour (saut?) de ligne, le tr fonctionne, il les remplace par des espaces.

  2. #2
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 349
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 349
    Par défaut
    Bonjour,

    Peut-être que le fichier que tu cherches à transformer est au format DOS ou MAC...

    PS: on préfèrera tr '\n' '\t' <fichier à cat fichier | tr '\n' '\t'.

  3. #3
    Membre confirmé Avatar de gadj0dil0
    Profil pro
    Support technique
    Inscrit en
    Février 2007
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Support technique

    Informations forums :
    Inscription : Février 2007
    Messages : 133
    Par défaut
    Merci je viens de tester mais là je ne récupère rien, et pas MAC ou DOS, sur DEBIAN comme indiqué, j'ai même testé en enregistrant les fichiers en encodant en iso-9001 et UTF-8

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    grep 'Date:' fichier.mbox  > dates
    tr '\n' '\t' < dates
    Je récupère une tabulation dès la 2e ligne mais le "retour de chariot" est toujours là !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sat  2 Sep 2017 22:39:49
    	Sat  2 Sep 2017 22:39:49
    	Sat  2 Sep 2017 22:39:50
    	Sat  2 Sep 2017 22:39:50
    etc

  4. #4
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 102
    Par défaut
    Bonjour,

    Citation Envoyé par gadj0dil0 Voir le message
    Merci je viens de tester mais c'est pareil, et pas MAC ou DOS, sur DEBIAN comme indiqué, j'ai même testé en enregistrant les fichiers en encodant en iso-9001)
    Attention! L'encodage des caractères (utf8 utf16 iso-8859-1 iso-9001 etc.) est totalement indépendant de l'encodage des fins de ligne (linux, mac, dos)!

    Afin qu'on puisse vérifier, quel est le résultat de la commande?

  5. #5
    Expert confirmé Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 288
    Par défaut
    Bonjour

    En quoi est-il pertinent de mettre toutes les dates remplies d'espaces sur une même ligne séparées par des espaces ?

  6. #6
    Membre confirmé Avatar de gadj0dil0
    Profil pro
    Support technique
    Inscrit en
    Février 2007
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Support technique

    Informations forums :
    Inscription : Février 2007
    Messages : 133
    Par défaut
    Citation Envoyé par Flodelarab Voir le message
    Bonjour

    En quoi est-il pertinent de mettre toutes les dates remplies d'espaces sur une même ligne séparées par des espaces ?
    Alors c'est la question à ne pas poser.
    C'est une étape d'un script qui gère plusieurs des paquets de 4 lignes pour en faire un tableau de 4 colonnes. Je n'utilise pas le array. C’est une phase de "débogage", jamais le fichier ne sera comme ca au final. Et je tente par là d'améliorer mes connaissances de ces commandes. Comme souvent il y a un truc qui bloque.

  7. #7
    Membre confirmé Avatar de gadj0dil0
    Profil pro
    Support technique
    Inscrit en
    Février 2007
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Support technique

    Informations forums :
    Inscription : Février 2007
    Messages : 133
    Par défaut
    Citation Envoyé par jack-ft Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    0000000  24915   8308  12832  21280  28773  12832  12592   8247
    0000020  12850  13114  14905  14644   2573  24915   8308  12832
    0000040  21280  28773  12832  12592   8247  12850  13114  14905
    0000060  14644   2573  24915   8308  12832  21280  28773  12832
    0000100  12592   8247  12850  13114  14905  12341   2573  24915
    0000120   8308  12832  21280  28773  12832  12592   8247  12850
    0000140  13114  14905  12341   2573  24915   8308  12832  21280
    0000160  28773  12832  12592   8247  12850  13114  14905  12341
    0000200   2573  24915   8308  12832  21280  28773  12832  12592
    0000220   8247  12850  13114  14905  12341   2573  24915   8308
    Ca fait mal à la tête

  8. #8
    Expert confirmé Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 288
    Par défaut
    @ gadj0dil0 :
    Tu as oublié l'option -c dans od -c. Donc bien sûr, ça pique.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 14/02/2006, 08h35
  2. [XSL-FO] Comment faire un retour de chariot
    Par virgul dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 22/03/2005, 07h20
  3. Retour de chariot automatique
    Par LibrairieSI dans le forum C++Builder
    Réponses: 5
    Dernier message: 23/02/2005, 23h46
  4. Réponses: 4
    Dernier message: 24/01/2005, 15h50
  5. Réponses: 4
    Dernier message: 10/06/2004, 18h05

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