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 :

Découpage par ligne


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    821
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2008
    Messages : 821
    Par défaut Découpage par ligne
    Bonjour à tous,

    avec sed ou awk, je cherche à découper des lignes en longueur fixe, de 30 caractères par exemple mais en évitant de tronquer un mot. C'est généralement un espace qui sépare deux mots :
    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ....+....1....+....2....+....3....+....4....+....5....+....6....+....7
    Je suis un enregistrement d'une longueur de 46                   
    par contre moi je suis de 28                                     
    C'est moi le grand frère car j'ai une longueur totale de ......65
    je cherche donc à obtenir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    ....+....1....+....2....+....3....+....4....+....5....+....6....+....7
    Je suis un enregistrement       
    d'une longueur de 46            
    par contre moi je suis de 28    
    C'est moi le grand frère car    
    j'ai une longueur totale de     
    ......65
    Est-ce possible ?
    En vous remerciant d'avance.

  2. #2
    Expert confirmé
    Avatar de becket
    Profil pro
    Informaticien multitâches
    Inscrit en
    Février 2005
    Messages
    2 854
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Informaticien multitâches
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 2 854
    Par défaut
    Oui, c'est possible avec quelque chose comme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
     
    {
            mystring=""
            for ( i=1 ; i <= NF ; i++ )
            {
     
                    if ( length(mystring $i ) > 30 )
                    {
                            print mystring
                            mystring=""
     
                    }
     
                    if ( length(mystring) == 0   )
                    {
                            mystring=mystring $i;
                    }
                    else
                    {
                                    mystring=mystring FS $i ;
     
                    }
     
     
            }
            print mystring
    }
    C'est évidemment a raffiner

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 658
    Par défaut
    fmt fait ça...
    ?
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    821
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2008
    Messages : 821
    Par défaut
    Merci à tous les deux,

    you rock !

Discussions similaires

  1. Parcourir un Db_GRID ligne par ligne
    Par sanosuke dans le forum Bases de données
    Réponses: 8
    Dernier message: 12/05/2008, 12h14
  2. TreeView - couleur par ligne
    Par LoicH dans le forum C++Builder
    Réponses: 4
    Dernier message: 20/06/2005, 23h25
  3. Réponses: 4
    Dernier message: 02/09/2004, 21h43
  4. [TSynMemo] Positionnement par ligne et colonne
    Par Mercilius dans le forum Composants VCL
    Réponses: 9
    Dernier message: 16/04/2003, 16h22

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