Document recapitulatif pour sed
vieurou
Messages postés
73
Statut
Membre
-
oeuf -
oeuf -
bonjour, connaissez vous un site internet ou un doc à télécharger récapitulant une somme d'exemple pour toutes les fonctions de sed (ou la plus grande partie ).
ça meviterai de perdre beaucoup de temp , le man ne donne pas d'exemple et pour trouver une info précise sur le net faut toujours chercher longtemps
par exemple au passage , comment inserer une ligne dans un fichier juste avant la première occurence d'un mot ?
le faire à chaque occurence est simple :
mais comment le limiter à uniquement la premiere occurence???
merci de vos réponse
ça meviterai de perdre beaucoup de temp , le man ne donne pas d'exemple et pour trouver une info précise sur le net faut toujours chercher longtemps
par exemple au passage , comment inserer une ligne dans un fichier juste avant la première occurence d'un mot ?
le faire à chaque occurence est simple :
sed '/\<motif\>/i \chaine_à_inserer' fichier_à_traiter
mais comment le limiter à uniquement la premiere occurence???
merci de vos réponse
A voir également:
- Document recapitulatif pour sed
- Comment reduire la taille d'un document - Guide
- Signer un document word - Guide
- Comment récupérer un document dans le presse-papier samsung - Guide
- Comment ouvrir un document docx - Guide
- Comment supprimer une page dans un document word - Guide
7 réponses
Salut,
Tu peux déjà commencer par jeter un œil dans la FAQ de CCM, quelques exemples y sont répertoriés.
Ensuite, je prépare actuellement une doc sur SED, qui j'espère sera la plus complète possible, en essayant d'expliquer au mieux certaines fonctionnalités très peu documentées et en y joignant justement des exemples concrets.
En attendant tu peux jeter aussi un œil à "info sed" (si toutefois cette fonctionnalité est installée sur ton système et dont voici sa transcription sur la toile) qui recèle quelques exemples beaucoup plus d'infos que la page de "man".
Sinon, pour ton problème, je m'y penche car c'est une éventualité à laquelle je n'avais pas pensé encore... je cherche donc ;-))
Tu peux déjà commencer par jeter un œil dans la FAQ de CCM, quelques exemples y sont répertoriés.
Ensuite, je prépare actuellement une doc sur SED, qui j'espère sera la plus complète possible, en essayant d'expliquer au mieux certaines fonctionnalités très peu documentées et en y joignant justement des exemples concrets.
En attendant tu peux jeter aussi un œil à "info sed" (si toutefois cette fonctionnalité est installée sur ton système et dont voici sa transcription sur la toile) qui recèle quelques exemples beaucoup plus d'infos que la page de "man".
Sinon, pour ton problème, je m'y penche car c'est une éventualité à laquelle je n'avais pas pensé encore... je cherche donc ;-))
Tiens pour ton problème essaie ça :
sed '0,/\<motif\>/{
i \chaine_à_inserer
}
' fichier_à_traiterJ'ai pas réussi à l'insérer sur une seule ligne. Si quelqu'un a la solution, je suis preneur ;-))
quelque petit souci avec cette ligne
mon script me declare automatiquement des variables du genre :
et je voudrait inserer une ligne vide entre chaque type de declaration afin d'avoir ça
j'ai donc essayé sed -e '0,/\<temp\>/{ i \\n}' fichier mais il me retourne sed: -e expression n°1, caractère 0: `{' non refermée
en faisant sed -i -e '0,/\<temp\>/ i \\n' fichier je n'ai pas d'erreur mais tous ce qui se trouve au dessus des temp est espace d'une ligne comme ceci
un point qui peut peut-etre aider c'est que les types ont toujours le même ordre (les const en premier , temp en second , int ensuite) mais ils se peut qu'il n'y ai pas de variable d'un type donc pas de declaration de ce type (ça peut passer par exemple de const à directement int)
sed '0,/\<motif\>/{ i \chaine_à_inserer}' fichier_à_traiter
mon script me declare automatiquement des variables du genre :
entete
const c0
const c1
const c2
temp r4
temp b3
temp r8
temp v2
const c0
const c1
const c2
int i1
int i2...
et je voudrait inserer une ligne vide entre chaque type de declaration afin d'avoir ça
entete
const c0
const c1
const c2
temp r4
temp b3
temp r8
temp v2
int i1
int i2...
j'ai donc essayé sed -e '0,/\<temp\>/{ i \\n}' fichier mais il me retourne sed: -e expression n°1, caractère 0: `{' non refermée
en faisant sed -i -e '0,/\<temp\>/ i \\n' fichier je n'ai pas d'erreur mais tous ce qui se trouve au dessus des temp est espace d'une ligne comme ceci
entete
const c0
const c1
const c2
temp r4
temp b3
temp r8
temp v2
int i1
int i2...
un point qui peut peut-etre aider c'est que les types ont toujours le même ordre (les const en premier , temp en second , int ensuite) mais ils se peut qu'il n'y ai pas de variable d'un type donc pas de declaration de ce type (ça peut passer par exemple de const à directement int)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question