Debian Debian-France Debian-Facile Debian-fr.org Debian-fr.xyz Debian ? Communautés

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 29-03-2020 11:48:43

Philou
Membre
Distrib. : Debian 10
Noyau : Linux 4.19.0-5-amd64
Inscription : 03-09-2017

[Résolu] Supprimer une ligne dans un fichier avec sed

Bonjour,

J'ai un fichier access.log dans lequel j'aimerais supprimer toutes les lignes commençant par 192.168.1.1
Cela peut se faire par sed, mais je n'arrive pas à trouver la bonne syntaxe.

Merci d'avance ! smile

Dernière modification par Philou (29-03-2020 12:30:52)

Hors ligne

#2 29-03-2020 12:02:39

David5647
Membre
Distrib. : Debian Bullseye/Sid
Noyau : 5.7.0-2-amd64
(G)UI : KDE/i3wm
Inscription : 27-08-2017

Re : [Résolu] Supprimer une ligne dans un fichier avec sed

cat test.txt


Lorem ipsum dolor sit amet, consectetur adipiscing
192.168.1.1elit, sed do eiusmod tempor incididunt ut labore e
t dolore m192.168.1.1agna aliqua. Ut enim ad minim veniam, qu
is nostrud exercitation ullamco laboris nisi ut al
iquip ex ea commodo consequat. Duis aute irure dol192.168.1.1
or in reprehenderit in voluptate velit esse cillum
192.168.1.1dolore eu fugiat nulla pariatur. Excepteur sint oc
caecat cupidatat non proident, sunt in culpa qui o
ff192.168.1.1icia deserunt mollit anim id est laborum



pour renvoyer dans la sortie standard

sed '/^192\.168\.1\.1/d' test.txt


Lorem ipsum dolor sit amet, consectetur adipiscing
t dolore m192.168.1.1agna aliqua. Ut enim ad minim veniam, qu
is nostrud exercitation ullamco laboris nisi ut al
iquip ex ea commodo consequat. Duis aute irure dol192.168.1.1
or in reprehenderit in voluptate velit esse cillum
caecat cupidatat non proident, sunt in culpa qui o
ff192.168.1.1icia deserunt mollit anim id est laborum



pour modifier le fichier lui même

sed -i '/^192\.168\.1\.1/d' test.txt



hint :
   ^ pour début de ligne
   \. pour echapper le .
   d pour supprimer la ligne (delete)

Dernière modification par David5647 (29-03-2020 12:04:38)

Hors ligne

#3 29-03-2020 12:07:35

saitama-san
Membre
Inscription : 28-07-2019

Re : [Résolu] Supprimer une ligne dans un fichier avec sed

un truc du genre :

sed '/^.*ip.*$/d' /tmp/fichier.txt



mais je suis pas certains que ça soit une bonne idée de supprimer des lignes dans un fichier de log scratchhead.gif

Hors ligne

#4 29-03-2020 12:30:29

Philou
Membre
Distrib. : Debian 10
Noyau : Linux 4.19.0-5-amd64
Inscription : 03-09-2017

Re : [Résolu] Supprimer une ligne dans un fichier avec sed

Super, un grand merci à toi !


David5647 a écrit :

cat test.txt


Lorem ipsum dolor sit amet, consectetur adipiscing
192.168.1.1elit, sed do eiusmod tempor incididunt ut labore e
t dolore m192.168.1.1agna aliqua. Ut enim ad minim veniam, qu
is nostrud exercitation ullamco laboris nisi ut al
iquip ex ea commodo consequat. Duis aute irure dol192.168.1.1
or in reprehenderit in voluptate velit esse cillum
192.168.1.1dolore eu fugiat nulla pariatur. Excepteur sint oc
caecat cupidatat non proident, sunt in culpa qui o
ff192.168.1.1icia deserunt mollit anim id est laborum



pour renvoyer dans la sortie standard

sed '/^192\.168\.1\.1/d' test.txt


Lorem ipsum dolor sit amet, consectetur adipiscing
t dolore m192.168.1.1agna aliqua. Ut enim ad minim veniam, qu
is nostrud exercitation ullamco laboris nisi ut al
iquip ex ea commodo consequat. Duis aute irure dol192.168.1.1
or in reprehenderit in voluptate velit esse cillum
caecat cupidatat non proident, sunt in culpa qui o
ff192.168.1.1icia deserunt mollit anim id est laborum



pour modifier le fichier lui même

sed -i '/^192\.168\.1\.1/d' test.txt



hint :
   ^ pour début de ligne
   \. pour echapper le .
   d pour supprimer la ligne (delete)

Hors ligne

Pied de page des forums