Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| linux:sed [01-11-2013 20:41] – edmc73 | linux:sed [04-10-2020 10:00] (Version actuelle) – [Remplacement / substitution] edmc73 | ||
|---|---|---|---|
| Ligne 17: | Ligne 17: | ||
| tata 4321 toto tutu | tata 4321 toto tutu | ||
| </ | </ | ||
| + | |||
| + | L' | ||
| Pour remplacer | Pour remplacer | ||
| - | sed -e ' | + | sed -i ' |
| < | < | ||
| Ligne 26: | Ligne 28: | ||
| </ | </ | ||
| - | On peut remarquer que seul la 1ère occurence | + | On peut remarquer que seule la 1ère occurrence |
| - | sed -e ' | + | sed -i ' |
| < | < | ||
| koko 1234 koko titi | koko 1234 koko titi | ||
| Ligne 33: | Ligne 35: | ||
| </ | </ | ||
| + | Pour ignorer la casse, on utilise l' | ||
| + | sed -i ' | ||
| + | |||
| + | Remplacer un \ par / dans les path des #include dans un fichier .c | ||
| + | sed -i '/# | ||
| + | sed -i '/# | ||
| + | sed -i '/# | ||
| + | | ||
| + | Pour remplacer dans l' | ||
| + | |||
| + | find . -name ' | ||
| + | et inversement | ||
| + | find . -name ' | ||
| ==== Translittération ==== | ==== Translittération ==== | ||
| Pratique pour par exemple remplacer tous les e avec accent par un e sans accent. | Pratique pour par exemple remplacer tous les e avec accent par un e sans accent. | ||
| Ligne 59: | Ligne 74: | ||
| Avec les **[ ]** et spécifie que la ligne commente par un **#** ou un **;**. Le **;** suivant veut dire que nous lançons une autre commande, celle ci dit que nous cherchons une ligne vide. **^** indique le début de la ligne et **$** la fin. **/d** on delete. | Avec les **[ ]** et spécifie que la ligne commente par un **#** ou un **;**. Le **;** suivant veut dire que nous lançons une autre commande, celle ci dit que nous cherchons une ligne vide. **^** indique le début de la ligne et **$** la fin. **/d** on delete. | ||
| + | Supprimer les lignes qui contient un message d' | ||
| + | sed -e '/HTTP accept: Too many open files/ | ||
| Éliminer les espaces et tabulations | Éliminer les espaces et tabulations | ||
| Ligne 99: | Ligne 116: | ||
| Ici on a rajouté **1d** qui permet de supprimer la 1ère ligne. | Ici on a rajouté **1d** qui permet de supprimer la 1ère ligne. | ||
| - | ==== Regexp extended ==== | + | ===== Exemple en vrac ===== |
| + | |||
| + | Source | ||
| + | < | ||
| + | dublablacodecode< | ||
| + | |||
| + | Résultat | ||
| + | < | ||
| + | fichier2.xyz</ | ||
| + | |||
| + | Sed | ||
| + | < | ||
| + | |||
| + | ==== Extraire la date et la reformaté dans un nom de fichier ==== | ||
| + | |||
| + | |||
| + | $ echo Pict_20140215_0945.jpg | sed -r ' | ||
| + | 15-02-2014 09:45 | ||
| + | |||
| + | ==== Extraire la valeur d'un test avec hdparm ==== | ||
| + | On veut récupérer la valeur 64.66 | ||
| + | < | ||
| + | |||
| + | /dev/sda: | ||
| + | | ||
| + | |||
| + | hdparm -t /dev/sda | sed -r '/ | ||
| + | |||
| + | Avec le ''/ | ||
| + | '' | ||
| + | On prend la valeur jusqu' | ||
| + | |||
| + | |||
| + | ==== Connaitre les machines connectées à notre serveur NFS ==== | ||
| + | |||
| + | < | ||
| + | |||
| + | |||
| + | |||
| + | ===== Regexp extended | ||
| On peut mettre l' | On peut mettre l' | ||
| Ligne 105: | Ligne 161: | ||
| > | > | ||
| > | > | ||
| - | >The only difference between basic and extended regular expressions is in the behavior of a few characters: ‘?’, ‘+’, parentheses, | + | >The only difference between basic and extended regular expressions is in the behavior of a few characters: ‘?’, ‘+’, parentheses, |
| > | > | ||
| > | > | ||
| > | > | ||
| - | >abc? | + | > |
| - | >becomes | + | > |
| - | >c\+ | + | > |
| - | >becomes | + | > |
| - | >a\{3,\} | + | > |
| - | >becomes | + | |
| - | > | + | |
| - | >becomes | + | |
| - | > | + | |
| - | >becomes | + | |