#1 Le 25/03/2013, à 00:08
- Mathal44
[Résolu] Envoyer à la ligne à chaque suite de caractère identique
Bonjour,
J'ai des fichiers texte avec la suite de caractère " -- " dans plusieurs lignes et je voudrais faire un renvoi à la ligne avant cette chaine de caractères à chaque fois que je la trouve.
Ça doit être possible avec grep et fold mais je ne sais pas comment les combiner pour que ça marche...
Pouvez-vous m'aider ?
Merci !
Mathal.
Dernière modification par Mathal44 (Le 25/03/2013, à 03:42)
Hors ligne
#2 Le 25/03/2013, à 01:10
- nesthib
Re : [Résolu] Envoyer à la ligne à chaque suite de caractère identique
sed 's/--/\n&/g' fichier
Ajouter l'option « -i » à sed pour écrire dans le fichier.
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#3 Le 25/03/2013, à 02:40
- Hizoka
Re : [Résolu] Envoyer à la ligne à chaque suite de caractère identique
je crois que tout est dit
mais histoire d'apporter quelque chose quand même en full bash
# Chargement du fichier dans une variable
contenu=$(<fichier)
# Changement de tous les -- en \n-- saut saut de ligne suivit de --
contenu="${contenu//--/\n--}"
# Exportation du texte modifier dans nouveau_fichier (ou fichier tout court)
echo -e "${contenu}" > nouveau_fichier
Une ola pour nesthib qui est partout et qui répond dans le mille à chaque fois (ou presque)
Dernière modification par Hizoka (Le 25/03/2013, à 02:44)
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#4 Le 25/03/2013, à 03:15
- nesthib
Re : [Résolu] Envoyer à la ligne à chaque suite de caractère identique
@Hizoka : Attention, si le fichier texte contient des chaînes de caractères ressemblant à des séquences échappées (« \n », « \b », « \c », « \0xxxx »…) tu risques d'avoir des comportements inattendus.
Par exemple si tu travailles sur un fichier LaTeX, n'importe quelle commande commençant par ce qui ressemble à un caractère d'échappement va poser un problème :
\newline
\bf
Le pire étant sûrement :
\chapter
ps. merci pour la \\o \o\ \o/ /o/ o//
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#5 Le 25/03/2013, à 03:41
- Mathal44
Re : [Résolu] Envoyer à la ligne à chaque suite de caractère identique
Cool ça marche impec !
Merci nesthib (et Hizoka aussi ) !
Hors ligne