recherche négative d'une chaîne de caractères sous unix - Shell/Batch - Programmation
Marsh Posté le 04-11-2005 à 09:08:22
grep -L
(cf. man )
Marsh Posté le 04-11-2005 à 09:51:53
-L et -V ne conviennent pas, je veux obtenir une liste des fichiers qui ne contienne PAS 26741.
Marsh Posté le 04-11-2005 à 10:00:36
J'ai dit -v, pas -V
Et selon ta version de grep, faut faire un man, apparemment tous les grep ne sont pas identiques selon l'OS.
Avec ma version, faudrait faire un : grep -lv "26741" ot*
Ensuite on a bien compris ce que tu voulais, par contre faudrait que tu comprennes que le réflexe à avoir sous Unix, c'est "man ma_commande"
Marsh Posté le 04-11-2005 à 10:14:20
il a lut le man
Marsh Posté le 04-11-2005 à 10:41:02
ReplyMarsh Posté le 04-11-2005 à 10:45:56
Tu es un peu trop précis là, pourrais-tu être plus vague ?
Marsh Posté le 04-11-2005 à 10:46:36
richard3 a écrit : erreur, après plusieurs essais ça ne marche pas... |
Tu peux nous dire ce que donne grep --version qu'on en sache pluss
Marsh Posté le 04-11-2005 à 11:05:40
elianor a écrit : Tu peux nous dire ce que donne grep --version qu'on en sache pluss |
Juste histoire de rigoler :
$ grep --version |
Marsh Posté le 04-11-2005 à 11:30:24
j'ai 3 fichiers traceriri traceriri1 traceriri2 qui contiennent:
toto
est
beau
et fort
mais bete
toto
est
beau
et fort
mais bete et con
toto
est
beau
et fort
mais bete
je lance grep -lv *con* traceriri*
et il me répond:
traceriri
traceriri1
traceriri2
voili voila...
Marsh Posté le 04-11-2005 à 11:48:07
Ah ben oui, c'est normal ça. Puisque grep trouve des lignes sans le mot "con" dans tous les fichiers. Faut réfléchir aussi
Une simple boucle et le tour est joué, exemple en ksh :
for i in `\ls -1 traceriri*`; do |
Marsh Posté le 04-11-2005 à 17:42:32
|
Marsh Posté le 04-11-2005 à 17:48:37
Ah cool, bien pratique cette option.
Moi j'ai pas avec mon grep. Et puis on ne saura sans doute jamais pour le grep du monsieur, vu qu'il ne semble pas vouloir utiliser man
Marsh Posté le 04-11-2005 à 19:18:53
grep (GNU grep) 2.5.1
Marsh Posté le 04-11-2005 à 08:56:39
Bonjour,
Je cherche depuis trois jours une méthode qui me permette de lister sous unix, parmi une collection de fichiers (par exemple ot*), ceux qui ne contiennent pas une chaîne de caractères donnés (par exemple 26741). J'ai essayé sous awk et sed, mais je n'y arrive pas.
Quelqu'un aurait-il une piste?
Merci.