![]() |
Bonjour et bienvenu par les États-Unis à la UNIX et Linux Forums! Merci de votre visite et vous joindre à notre communauté mondiale.
|
|
google unix.com
|
|||||||
| Forums | S'inscrire | Forum Rules | Liens | Albums | FAQ | Liste des membres | Calendrier | Recherche | Aujourd'hui, les postes | Marquer les forums comme lus |
| UNIX pour les nuls Questions et réponses Si vous ne savez pas où poster un UNIX ou Linux question, post it here. Tous les systèmes UNIX et Linux, débutants bienvenus! |
Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
|
||||
| Fil | Thread Starter | Forum | Réponses | Last Post |
| besoin d'aide: sed et répétitions | metalwarrior | UNIX for Advanced & Expert Users | 1 | 02-02-2008 05:00 AM |
| Répétition de variables dans le code | Mahalakshmi | De programmation et de script Shell | 1 | 02-08-2007 07:33 AM |
| Répétition des commandes dans un script | Dave2874 | De programmation et de script Shell | 4 | 03-14-2005 10:34 AM |
| Omettre de répéter des lignes | TheCrunge | UNIX pour les nuls Questions et réponses | 6 | 02-22-2005 06:26 PM |
| répéter le message du noyau | progressdll | UNIX for Advanced & Expert Users | 2 | 07-29-2002 04:18 AM |
![]() |
|
|
LinkBack | Thread Tools | Recherche sur ce Thread | Rate Thread | Modes d'affichage |
|
|
|
||||
|
d'assistance avec sed (répétitions)
salut,
J'ai besoin d'écrire une commande de rechercher dans un fichier texte, de trouver les lignes qui contiennent des modèles de plus de trois caractères qui se répètent une fois, et de mettre perenthesizes autour d'eux. Ainsi, par exemple, la ligne "123test123" serait remplacé par "(123) test (123)" et "abcdeabcde" à "(abcde) (abcde). toute suggestion est appréciée. |
|
||||
|
Bonjour,
Je peux vous aider avec le 1er requête, lorsque vous essayez de changer "123test123" à "(123) test (123)». Cela peut se faire facilement en utilisant SED . ---------- Syntaxe: sed -e 's / \ (123 \) / (\ 1) / g': -> g paramètre remplacera l'exemple au niveau mondial dans le fichier. Exemple: echo 123test123 | sed -e 's / \ (123 \) / (\ 1) / g' Sortie: (123) test (123) ---------- Essayez ceci dans votre fichier et faites-nous savoir comment cela se passe à votre fin. ![]() Merci, |
|
||||
|
salut merci pour la réponse, mais j'ai besoin de la sed commande pour trouver toutes les répétitions et de les mettre lui-même l'intérieur (). Je ne peux pas préciser le motif pour lui de chercher.
il peut être 123 ou abc ou tout ce qui est répété par le biais de la ligne. merci |
|
||||
|
Si vous avez seulement un ou limité Patter de remplacer, il peut être fait facilement avec sed comme expliqué précédemment.
S'il vous plaît suivre les étapes. -------- 1) Enregistrer thispatternthatpattern dans un fichier appelé test 2) Maintenant, d'après vous thispatternthatpattern doit être converti à ce (pattern) que (le modèle). 3) Maintenant tapez la commande suivante ---------- sed -i 's / Patter / (pattern) / g' test ----------- 4) Voir l'o / p en utilisant "cat test". Il doit être collé comme ci-dessous. bash-3.1 $ cat test ce (pattern) nthat (pattern) n -------- Merci, |
|
||||
|
tnx salut, mais ce n'est pas ce que je recherche.
comme je l'ai dit je ne veux spécifier puis modèle pour sed. Je veux trouver automatiquement tous les modèles qui sont répétés et faire quelque chose avec eux. l'expression régulière serait quelque chose comme ceci: '.* \ (3 \) \ .* \ 1' mais je ne peux que mettre le tout en register1, I cant la distinction entre le premier modèle, modèle répété et contenus possibles entre eux. |
![]() |
| Bookmarks |
| Thread Tools | Recherche sur ce Thread |
| Modes d'affichage | Rate this thread |
|
|