Bash caractères doubles
Résolu/Fermé
A voir également:
- Bash caractères doubles
- Caractères ascii - Guide
- Caractères spéciaux clavier azerty - Guide
- Caractères spéciaux - Guide
- Caractères spéciaux mac - Guide
- 8 caractères exemple - Guide
4 réponses
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
16 janv. 2022 à 11:52
16 janv. 2022 à 11:52
hello
$ awk -F "" '{x=0; for(n=1; n<=NF; n++)if($n==$(n+1))x++; if(x<3)print $0}' fichier
01234567
11234556
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
18 janv. 2022 à 11:21
18 janv. 2022 à 11:21
à tester sur plus de données
$ cat fichier
900112233
00112233
01234567
11234556
$
$ awk -F "" '$1!=$2 || $3!=$4 {print $0}' fichier
900112233
01234567
11234556
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
16 janv. 2022 à 13:18
16 janv. 2022 à 13:18
un probleme proche avait été posé
https://forums.commentcamarche.net/forum/affich-37411007-recherche-avec-grep#3
https://forums.commentcamarche.net/forum/affich-37411007-recherche-avec-grep#3
Bonjour, excuse-moi j'ai une question,
Comment puis-je supprimer toutes les lignes qui commencent par un double dans un fichier texte, s'il te plaît ?
Comment puis-je supprimer toutes les lignes qui commencent par un double dans un fichier texte, s'il te plaît ?
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
Modifié le 18 janv. 2022 à 15:30
Modifié le 18 janv. 2022 à 15:30
Dans l'absolu, c'est une nouvelle question qui n'a rien à avoir avec le problème initial donc tu devrais la poser dans un nouveau fil de discussion. Le plus simple dans ton cas est de faire un filtre basé sur une expression régulière, par exemple à l'aide de
Exemple :
Bonne chance
egrep
- Si tu parles d'un double au sens nombre flottant (par exemple -1.23 ou +4.56 ou 78.90 ou n'importe quelle valeur entière (signée ou non signée)), cela s'écrit :
egrep -v "^(-|[+])?[0-9]+([.][0-9]+)?" fichier
Exemple :
(mando@silk) (~) $ cat fichier
1.23 abc
-4.56 def
ghi 1.23
klm opq
(mando@silk) (~) $ egrep -v "^(-|[+])?[0-9]+([.][0-9]+)?" fichier
ghi 1.23
klm opq
- Si tu parles d'un chiffre dupliqué il faut simplement adapter le filtre. Si j'ai bien compris cela revient à supprimer les lignes qui commencent par 11, 22, 33 ... 99, ou 00. Le filtre devient :
egrep -v "^(00|11|22|33|44|55|66|77|88|99|00)" fichier
Bonne chance
Jeremyprog
>
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
18 janv. 2022 à 15:25
18 janv. 2022 à 15:25
Merci ca fonctionne bien :)
Dsl pour le fil j'aurai du le mettre en nouveau fil de discussion
Dsl pour le fil j'aurai du le mettre en nouveau fil de discussion
16 janv. 2022 à 12:37
Tu es impressionnant, à chaque question que je pose tu me trouve les solutions.
Vraiment un très grand MERCI à toi