GNU/Linux >> Tutoriels Linux >  >> Linux

Grep pour une ligne ne contenant que 5 ou 6 chiffres ?

Comment feriez-vous grep pour une ligne contenant seulement 5 ou 6 chiffres ? Quelque chose comme ça.

cas 1 (avec un espace de début)

           10      2       12      1       13

cas 2 (pas d'espace en tête)

   1       2       3       4       5        6

Je pensais que quelque chose comme ça fonctionnerait.

grep -E '[0-9]{5}'

Réponse acceptée :

grep -E '[0-9]{5}' recherche des nombres d'au moins 5 chiffres. Vous avez besoin de 5 chiffres avec au moins un chiffre :

grep -E '[0-9]+([^0-9]+[0-9]+){4}'
  • [0-9]+ – un nombre d'au moins un chiffre
  • [^0-9]+[0-9]+ – un nombre avec au moins un chiffre, précédé d'au moins un caractère non numérique. Nous répétons ensuite cela 4 fois pour obtenir 5 nombres séparés par des non-chiffres.
  • Si l'exigence est exactement 5, vous pouvez entourer cette expression régulière de [^0-9] pour que toute la ligne corresponde (avec les ancres, bien sûr).
  • Selon ce que vous voulez ici (est-ce que 1,2,3,4,6 qualifier ?), vous pouvez consulter d'autres séparateurs. Par exemple, un nombre réel en notation scientifique appropriée ressemblerait à :[+-]?(([0-9]+(.[0-9]+)?)|([0-9]?.[0-9]+))([eE][+-][0-9]+)? Les séparateurs ne peuvent donc pas inclure . , e , etc. Ils ne peuvent être que des espaces blancs, comme mikeserv Remarques. Ou peut-être des virgules, s'il s'agit d'un enregistrement CSV. Ou selon les paramètres régionaux, une virgule serait le séparateur décimal. Variez [^0-9] selon vos besoins.

Linux
  1. Linux - Comment Grep Pour Un Mot Spécifique Et Saisir Du Texte?

  2. Trouver le dernier élément d'une ligne à l'aide de Grep ?

  3. Comment afficher les numéros de ligne dans vi/vim ?

  4. 10 exemples pratiques de commandes Grep pour les développeurs

  5. Comment recherchez-vous des fichiers contenant des fins de ligne DOS (CRLF) avec grep sous Linux ?

3 gestionnaires de mots de passe pour la ligne de commande Linux

Comment afficher les numéros de ligne dans Vim / Vi

Comment afficher les numéros de ligne dans Gedit

ligne de commande linux :du --- comment faire en sorte qu'il n'affiche que le total pour chaque répertoire

Linux recherche mot et affiche toute la ligne

ajouter une ligne à un fichier UNIQUEMENT s'il n'est pas déjà dans le fichier