Rechercher : dans
Par :

[Unix] Majuscules et minuscules

Dernière réponse le 20 nov 2007 à 18:30:26 Trezeg, le 5 avr 2007 à 14:51:10 
 Signaler ce message aux modérateurs

Bonjour

Lors de recherche dans des fichiers logs (plus de 50 fichiers de plusieurs milliers de lignes), j'exécute la commande ci-dessous (-i pour 'ignore case'):

grep -i Tahoma *
grep -i KNV *
Mais parfois j'obtiens l'erreur suivante :
grep: Maximum line length of 2048 exceeded.
Pour remédier à ce problème j'utilise awk :
awk  '/Tahoma/' * 
awk  '/KNV/' *
Mais je ne sais pas comment utiliser l'option 'ignore case' avec awk ?

Est-ce que quelqu'un aurait une idée ?

D'avance merci.

Trez
Configuration: SunOS 5.8

Meilleures réponses pour « [Unix] Majuscules et minuscules » dans :
Google - Minuscules, majuscules, accents, pluriels VoirGoogle ne tient pas compte de la casse des caractères. Donc que vous utilisiez des majuscules, des minuscules ou les 2 mélangées vous obtiendrez les mêmes résultats. Google ne tient pas compte des accents, cédilles, tildes espagnols… Ainsi,...
Code pour télécommande universelle VoirTélécommande universelle Philips Télécommande universelle Thomson ROC Télécommande universelle One for all Télécommande universelle Star Choice Télécommande universelle Marmitek Télécommande universelle Lifetec LT Télécommande universelle...
Unidialog - Accès impossible VoirLe Service Unidialog des Assedic permet à tout moment, partout en France, d'effectuer le traitement immédiat de votre dossier : déclaration de situation mensuelle consultation de votre dossier obtention d'une attestation changement de...
Télécharger Revo Uninstaller VoirRevo Uninstaller est un logiciel édité par VS Revo Group permettant de faire un nettoyage en profondeur avec diverses fonctionnalités : Nettoyage, désinstallation de programmes avec suppression des clefs de registres périmées. Un mode Chasseur...
Le bus USB (Universal Serial Bus) VoirPrésentation du bus USB Le bus USB (Universal Serial Bus, en français Bus série universel) est, comme son nom l'indique, basé sur une architecture de type série. Il s'agit toutefois d'une interface entrée-sortie beaucoup plus rapide que les ports...
Introduction aux systèmes UNIX VoirLe système UNIX Le système Unix est un système d'exploitation multi-utilisateurs, multi-tâches, ce qui signifie qu'il permet à un ordinateur mono ou multi-processeurs de faire exécuter simultanément plusieurs programmes par un ou plusieurs...
Commandes UNIX VoirTableau des principales commandes UNIX Commande Unix Description Options ls liste le contenu d'un répertoire -a Affiche tous les fichiers, y compris les fichiers cachés ...

1

jipicy, le 5 avr 2007 à 15:03:07

Salut,

Si tu as "gawk" (awk --version) :

awk 'BEGIN {IGNORECASE=1;} /motif/ {print $0}'
;-))
Z'@+...che.
JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

2

dubcek, le 5 avr 2007 à 15:19:39

Le problème c'est le nombre de fichiers, utiliser xargs
ls | xargs grep -i XXX

Répondre à dubcek

3

Trezeg, le 5 avr 2007 à 15:25:10

Merci jipicy mais ca semble coincer quelque part :
J'ai créé un répertoire chemin dans lequel il y a un fichier nommé monLog.

$more monLog
errOr
ErroR
error
tests
eRRor
Et quand je lance la commande
awk 'BEGIN {IGNORECASE=1;} /error/ {print $0}'
le système semble se figer...

Répondre à Trezeg

4

dubcek, le 5 avr 2007 à 15:32:53

Awk 'BEGIN {IGNORECASE=1;} /error/ {print $0}' < monLog

Répondre à dubcek

5

jipicy, le 5 avr 2007 à 15:43:36

Merci ;-)
Z'@+...che.

JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

6

Trezeg, le 5 avr 2007 à 15:56:04

Merci mais j'obtiens le meme résultat alors que je change la valeur de l'IGNORECASE...

$awk 'BEGIN {IGNORECASE=1;} /error/ {print $0}' < monLog
error
$ awk 'BEGIN {IGNORECASE=0;} /error/ {print $0}' < monLog
error
$
Est-ce normal ?

Trez

Répondre à Trezeg

7

jipicy, le 5 avr 2007 à 16:01:14

Non !

[jp@MDK repertoire]$ cat toto
errOr
ErroR
error
tests
eRRor

[jp@MDK repertoire]$ awk 'BEGIN {IGNORECASE=1;} /error/ {print $0}' toto
errOr
ErroR
error
eRRor

[jp@MDK repertoire]$ awk 'BEGIN {IGNORECASE=0;} /error/ {print $0}' toto
error
[jp@MDK repertoire]$
C'est quelle version de "awk" que tu as ? (awk --version | head -1 )

;-)
Z'@+...che.
JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

8

Trezeg, le 5 avr 2007 à 16:17:32

Je ne sais pas car meme cette commande fige le systeme...lol
Pour info, je suis en Sun OS 5.8 et je n'ai pas gawk. Il y aurait-il une solution alternative ?

Merci

Répondre à Trezeg

9

jipicy, le 5 avr 2007 à 16:22:59

Je ne pense pas pour les versions antérieures de "awk".

Par contre essaie la solution donnée par "dubcek" au post #2.
Z'@+...che.

JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy

10

Trezeg, le 5 avr 2007 à 16:32:50

Oupss, j'avais pa vu le post de dubcek...
Ca marche nickel.
Merci à tous et bon (long) weekend

Trez

Répondre à Trezeg

11

dubcek, le 5 avr 2007 à 16:40:20

Avec Solaris, il faut utiliser nawk (new awk)

Répondre à dubcek

12

Un passant, le 20 nov 2007 à 18:23:07

Quel est l'intérêt de xargs ici par rapport à un pipe tout court ?

Répondre à Un passant

13

 jipicy, le 20 nov 2007 à 18:30:26

http://www.commentcamarche.net/faq/sujet 625 suppression impossible liste d arguments trop longue

Z'@+...che.

JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé.

Répondre à jipicy
Collection CommentÇaMarche.net