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 :

[KSH] ajouter des saut de lignes tous les 200 caractères dans un fichier


Sujet :

Shell et commandes GNU

  1. #1
    Membre du Club
    Inscrit en
    Juin 2008
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 83
    Points : 56
    Points
    56
    Par défaut [KSH] ajouter des saut de lignes tous les 200 caractères dans un fichier
    Bonjour,

    Je reçois un fichier ne contenant pas de retour chariot. Je dois en ajouter un tous les 200 caractères. Auriez-vous une astuce pour le faire svp ?

    En vous remerciant par avance !

    Bien amicalement

  2. #2
    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
    Points : 5 849
    Points
    5 849
    Par défaut
    à tester:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sed -e 's:\(.\{200\}\):\1\n:g'

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 587
    Points : 19 466
    Points
    19 466
    Par défaut
    Bonjour,


  4. #4
    Membre du Club
    Inscrit en
    Juin 2008
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 83
    Points : 56
    Points
    56
    Par défaut
    Merci beaucopu N_BaH, ta méthode marche du tonnerre !!!

    Par contre jack-ft, le sed que tu as fais ne fait qu'ajouter des 'n' à chaque 200 caractères . J'ai essayé de modifier pour pour ajouter des \n. mais... en vain :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sed -e 's:\(.\{200\}\):\1\\\n:g'
    Y-a-t-il une autre méthode à ce sed ?

    Cordialement,

  5. #5
    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
    Points : 5 849
    Points
    5 849
    Par défaut
    Citation Envoyé par twixi Voir le message
    Par contre jack-ft, le sed que tu as fais ne fait qu'ajouter des 'n' à chaque 200 caractères . J'ai essayé de modifier pour pour ajouter des \n. mais... en vain :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sed -e 's:\(.\{200\}\):\1\\\n:g'
    Y-a-t-il une autre méthode à ce sed ?
    Oui. Effectivement, c'est un peu galère...
    ça marche pour certains ksh, mais pas tous!

    Voici ce que j'ai trouvé et qui marche pour la plupart des ksh (au moins ceux que j'ai à ma disposition):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $ MY_RETURN="\\\\\n"
    $ echo abcdefgh | sed -e "$(print "s:\(.\{2\}\):\1${MY_RETURN}:g")"
    ab
    cd
    ef
    gh
    Est-ce que ça marche pour le tien?

  6. #6
    Membre du Club
    Inscrit en
    Juin 2008
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 83
    Points : 56
    Points
    56
    Par défaut
    Ah oui comme ça effectivement ça fonctionne beaucoup mieux !!

    Merci beaucoup pour ta réponse jack-ft!

  7. #7
    Expert éminent

    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
    Points : 6 276
    Points
    6 276
    Par défaut
    Salut,

    Essaye comme ça : sed -e 's/.\{2\}/&\x0a/g'

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

Discussions similaires

  1. saut de ligne tous les n caractère
    Par bigs3232 dans le forum Langage
    Réponses: 2
    Dernier message: 07/01/2012, 13h41
  2. [PHP 5.3] Ajouter des sauts de ligne dans un fichier XML
    Par geforce dans le forum Langage
    Réponses: 4
    Dernier message: 08/04/2010, 15h32
  3. [CS3] Non respect des saut de ligne en fin de paragraphe dans xml from fmpro
    Par didde3866 dans le forum Dreamweaver
    Réponses: 2
    Dernier message: 23/01/2010, 09h44
  4. Réponses: 2
    Dernier message: 16/08/2006, 14h47
  5. Ajouter des sauts de lignes à la table des matières
    Par lisa.a dans le forum Mise en forme
    Réponses: 3
    Dernier message: 15/08/2006, 17h56

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