[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [linux] regexp et sed
...
> problème de regexp, dans les docs je vois souvent ecrit qu'en utilisant la
> notation [x-x] on selectionne tous les char entres deux x, mais quand j'essaie
> de l'utiliser je n'y arrive jamais... et là je craque :)
>
> par exemple:
> xwininfo | grep 'id:' - | sed s/'xwininfo: Window id: '// - | sed s/[\"-\"]// -
> qui serait censé retourner l'id d'une fenêtre, et seulement son id
> et en fait ça retourne
>
> 0x3800004 Eterm-0.8.10"
xwininfo|grep 'id:'|sed 's/^.*id: //;s/ .*$//'
fait l'affaire...
Ou plus court avec awk:
xwininfo|awk '/id:/ {print $4}'
> le dernier ' s/[\"-\"]//g ' ne fonctionne donc pas (comme je voudrais
> s'entend :)
> il retire seulement le 1ier "
Ah non, c'est toi qui a mal entendu ;-)
[a-z] signifie un caractère se trouvant dans abcdefghijkl...xyz
Ce que tu veux faire, c'est
s/\".*\"//
car .* signifie:
. = n'importe quel caractère, suivi de
* = de 0 à n fois (donc un nombre quelconque de fois, 0 compris)
--
-o) / Pascal Bleser ATOS Payment Systems|
/\\ \ C++/UNIX Development Aachen, Germany|
_\_v \<guru@linuxbe.org> <pbleser@atosorigin.com>|
---------------------------------------------------|
/earth is 98% full... please delete anyone you can.:
---------------------------------------------------'
[ Soyez précis dans vos sujets svp afin de déterminer directement ]
[ le type de demande... ]
[ Pour vous (dés)inscrire, aller sur http://linuxbe.org/ml.php ]
[ http://LinuxBe.org Contact: listmaster@linuxbe.org ]