Supprimer plusieurs chaines de caractères

didi92 -  
spacm Messages postés 141 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je souhaiterais supprimer plusieurs lignes d'un fichiers contenant deux chaines de caractères.

la commande sed '/<chaine de caractère>/d' test.txt => permet de supprimer les lignes contenant la chaine de caractère spécifié du fichier test.txt. Or je souhaiterais supprimer les lignes contenant deux chaine de caractères différentes en une seule commande sed.

Comment dois-je faire?

merci


A voir également:

5 réponses

spacm Messages postés 141 Date d'inscription   Statut Membre Dernière intervention   30
 
Bonjour,
essaie:
sed '/ch1\|ch2/d' test.txt

en fait, le | fait le "ou", mais tu le protèges avec \ pour qu'il ne soit pas considéré
comme faisant partie de la chaine recherchée.
1
didi92
 
Merci cela fonctionne très bien :-)

Aussi, je me permets de te poser une autre question.
Je souhaite comparer deux fichiers et ensuite d'afficher la différence entre les deux.
j'utilise pour cela la fonction "diff". Cette fonction m'affiche bien les différence mais elle maffiche aussi une chaine de caractères précisant à quelles lignes les différences se trouve. ces caractères sont de la forme 1,256d0.

Est-il possible de supprimer ces caractères lors de laffichage du résultat de la commande diff?

Merci
0
spacm Messages postés 141 Date d'inscription   Statut Membre Dernière intervention   30
 
Je n'ai pas trouvé d'option à diff qui le permettent rapidement, mais une meilleure consultation de la page man peut peut être amener à une piste.
sinon, j'ai fait comme ça:

diff test.txt test2.txt | grep "^<\|^>"

afin de ne garder que les lignes de sortie diff souhaitées:
^< commençant par <
\| ou
^> commençant par >
0
didi92
 
Encore merci, cela fonctionne bien.

Je mannipule actuellement nmap.

Aussi, j'aurais une question à te poser sur l'outil nmap.
En effet, actuellement j'utilise la commande nmap de la façon suivante:
nmap -sP <plage ip> Cela affiche les ip et le nom des hôtes connecté. Cette commande a l'avantage de scanner que les postes connecté et pas les autres de la plage ip. Cela rend l'exécution de la commande beaucoup plus rapide. la commande nmap -O et nmap -sS sont intéressantes mais beaucoup plus longues à exécuter. Serait-il possible de combiner les commandes nmap -sP et nmap -O (ou nmap -sS) pour optimiser l'exécution de la commande nmap -sS ou nmap -O?

Je te remercie encore.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
spacm Messages postés 141 Date d'inscription   Statut Membre Dernière intervention   30
 
Je suppose qu'on peut assez facilement écrire un petit script qui extrait les ip trouvées par nmap -sP, et qui lance un nmap -O ou -sS sur chacune.
Mais je doute qu'on y gagne en performances. Je suppose que nmap fait de lui même les optimisations possibles.
0