maintenant, avec tr, je souhaite supprimer tout ce qui n'est pas chiffre
ou point :
> ifconfig en0 | grep "broadcast" | tr -C -d .0-9
ce qui me retourne que dalle )))
pourtant le man dit : -C Complement the set of characters in
string1, that is ``-C ab'' includes every character except for ``a'' and
``b''.
donc, je retourne ma vest et je fais :
> ifconfig en0 | grep "broadcast" | tr -C -d [:alpha:] qui me dit : zsh: no
matches found: [:alpha:]
mais bon c'est zsh qui répond, pas tr...
je passe donc à :
> ifconfig en0 | grep "broadcast" | tr -d a-zA-Z
qui me donne :
192.168.3.1 000 192.168.3.255
et non pas : 192.168.3.1 000 192.168.3.255
donc il y a qqc devant le premier "192"
c'est ça le but de ce post, supprimer la chaîne devant "192", je suppose
que c'est un tab (en fait j'ai vérifié, avec TextMate, en envoyant le
résultat de la commande dans un fichier texte).
donc je laisse de coter ce pb particulier et enchaîne avec sed :
comme la ligne commence à faire long, je me dis qu'il doit y avoir une
solution plus simple mais je ne connais pas les outils en ligne de
commande traitant des chaines de caractères et surtout leur domaine
d'utilisation respectif.
en ruby je saurais faire rapidemnt, mais bon faut aussi essayer d'autres
outils...
pour infos : "pipes" ta commande avec un 'tr -d [:space:]'
ben oui, j'ai lu ça, met avec zsh ça me donne :
echo "some spaces in between" | tr -d [:space:] zsh: no matches found: [:space:]
de quoi il se mèle là zsh ?
comme tout shell qui se respecte il analyse la ligne de commande pour y trouver les caracteres speciaux.
il intercepete donc [:space:] pour mémoire [ est l'oerateur de test
il faut soit proteger les caracteres speciaux à grand cooups de soit mettre le tout entre cote
de plus [:psace:] interceptant les horizontal or vertical whitespace (ie les espcaces entre autre, mais aussi les n) tu ne verra rien vu que le n posé par echo sera delete. donc pas d'echo du resultat
Eric
-- Tu as mille fois raison, un abonnement gratuit ce n'est pas un cadeau. D'ailleurs quand on a eu le beurre, l'argent et le cul de la crémière, à part dire des conneries, il ne reste plus grand chose à faire. -+- Biz in GNU : Et là, ça vaut gratuit ou ça fout la chtouille ? -+-
Une bévue wrote:
kurtz_le_pirate <kurtzlepirate@yahoo.fr> wrote:
pour infos :
"pipes" ta commande avec un 'tr -d [:space:]'
ben oui, j'ai lu ça, met avec zsh ça me donne :
echo "some spaces in between" | tr -d [:space:]
zsh: no matches found: [:space:]
de quoi il se mèle là zsh ?
comme tout shell qui se respecte il analyse la ligne de commande pour y trouver
les caracteres speciaux.
il intercepete donc [:space:]
pour mémoire [ est l'oerateur de test
il faut soit proteger les caracteres speciaux à grand cooups de
soit mettre le tout entre cote
de plus [:psace:] interceptant les horizontal or vertical whitespace
(ie les espcaces entre autre, mais aussi les n) tu ne verra rien vu que le n
posé par echo sera delete. donc pas d'echo du resultat
Eric
--
Tu as mille fois raison, un abonnement gratuit ce n'est pas un cadeau.
D'ailleurs quand on a eu le beurre, l'argent et le cul de la crémière,
à part dire des conneries, il ne reste plus grand chose à faire.
-+- Biz in GNU : Et là, ça vaut gratuit ou ça fout la chtouille ? -+-
pour infos : "pipes" ta commande avec un 'tr -d [:space:]'
ben oui, j'ai lu ça, met avec zsh ça me donne :
echo "some spaces in between" | tr -d [:space:] zsh: no matches found: [:space:]
de quoi il se mèle là zsh ?
comme tout shell qui se respecte il analyse la ligne de commande pour y trouver les caracteres speciaux.
il intercepete donc [:space:] pour mémoire [ est l'oerateur de test
il faut soit proteger les caracteres speciaux à grand cooups de soit mettre le tout entre cote
de plus [:psace:] interceptant les horizontal or vertical whitespace (ie les espcaces entre autre, mais aussi les n) tu ne verra rien vu que le n posé par echo sera delete. donc pas d'echo du resultat
Eric
-- Tu as mille fois raison, un abonnement gratuit ce n'est pas un cadeau. D'ailleurs quand on a eu le beurre, l'argent et le cul de la crémière, à part dire des conneries, il ne reste plus grand chose à faire. -+- Biz in GNU : Et là, ça vaut gratuit ou ça fout la chtouille ? -+-
pere.noel
Eric Deveaud wrote:
de plus [:psace:] interceptant les horizontal or vertical whitespace (ie les espcaces entre autre, mais aussi les n) tu ne verra rien vu que le n posé par echo sera delete. donc pas d'echo du resultat
oui, oui, merci beaucoup, j'ai expérimenté ça ))))
j'me disais où las, ma regex n'est pa au point, je n'ai plus rien....
je suis mort de rire, c'est quand même particulièrement amusant le cli ;-)
effet anti-dépression garanti. -- une bévue
Eric Deveaud <edeveaud@pasteur.fr> wrote:
de plus [:psace:] interceptant les horizontal or vertical whitespace
(ie les espcaces entre autre, mais aussi les n) tu ne verra rien
vu que le n
posé par echo sera delete. donc pas d'echo du resultat
oui, oui, merci beaucoup, j'ai expérimenté ça ))))
j'me disais où las, ma regex n'est pa au point, je n'ai plus rien....
je suis mort de rire, c'est quand même particulièrement
amusant le cli ;-)
de plus [:psace:] interceptant les horizontal or vertical whitespace (ie les espcaces entre autre, mais aussi les n) tu ne verra rien vu que le n posé par echo sera delete. donc pas d'echo du resultat
oui, oui, merci beaucoup, j'ai expérimenté ça ))))
j'me disais où las, ma regex n'est pa au point, je n'ai plus rien....
je suis mort de rire, c'est quand même particulièrement amusant le cli ;-)
effet anti-dépression garanti. -- une bévue
kurtz le pirate
In article <1hbrzkj.1ij205y1e4w92dN%, (Une bévue) wrote:
kurtz_le_pirate wrote:
pour infos : "pipes" ta commande avec un 'tr -d [:space:]'
ben oui, j'ai lu ça, met avec zsh ça me donne :
echo "some spaces in between" | tr -d [:space:] zsh: no matches found: [:space:]
de quoi il se mèle là zsh ?
pareil avec [[:space:]]
ha ? moi j'utilise bash et en tappant donc : <ifconfig en0 | grep "broadcast" | tr -d ta-zA-Z | sed -e "s/*([0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*) .*/1/" | tr -d [:space:]> d'un seul trait (sans les <> bien sur, ça passe sans problème.
-- klp
In article <1hbrzkj.1ij205y1e4w92dN%pere.noel@laponie.com.invalid>,
pere.noel@laponie.com.invalid (Une bévue) wrote:
kurtz_le_pirate <kurtzlepirate@yahoo.fr> wrote:
pour infos :
"pipes" ta commande avec un 'tr -d [:space:]'
ben oui, j'ai lu ça, met avec zsh ça me donne :
echo "some spaces in between" | tr -d [:space:]
zsh: no matches found: [:space:]
de quoi il se mèle là zsh ?
pareil avec [[:space:]]
ha ? moi j'utilise bash et en tappant donc :
<ifconfig en0 | grep "broadcast" | tr -d ta-zA-Z | sed -e
"s/*([0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*) .*/1/" | tr
-d [:space:]> d'un seul trait (sans les <> bien sur, ça passe sans
problème.
In article <1hbrzkj.1ij205y1e4w92dN%, (Une bévue) wrote:
kurtz_le_pirate wrote:
pour infos : "pipes" ta commande avec un 'tr -d [:space:]'
ben oui, j'ai lu ça, met avec zsh ça me donne :
echo "some spaces in between" | tr -d [:space:] zsh: no matches found: [:space:]
de quoi il se mèle là zsh ?
pareil avec [[:space:]]
ha ? moi j'utilise bash et en tappant donc : <ifconfig en0 | grep "broadcast" | tr -d ta-zA-Z | sed -e "s/*([0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*) .*/1/" | tr -d [:space:]> d'un seul trait (sans les <> bien sur, ça passe sans problème.
-- klp
pere.noel
kurtz le pirate wrote:
ha ? moi j'utilise bash et en tappant donc : <ifconfig en0 | grep "broadcast" | tr -d ta-zA-Z | sed -e "s/*([0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*) .*/1/" | tr -d [:space:]> d'un seul trait (sans les <> bien sur, ça passe sans problème.
[[...]] c'est le if en zsh ... -- une bévue
kurtz le pirate <kurtzlepirate@yahoo.fr> wrote:
ha ? moi j'utilise bash et en tappant donc :
<ifconfig en0 | grep "broadcast" | tr -d ta-zA-Z | sed -e
"s/*([0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*) .*/1/" | tr
-d [:space:]> d'un seul trait (sans les <> bien sur, ça passe sans
problème.
ha ? moi j'utilise bash et en tappant donc : <ifconfig en0 | grep "broadcast" | tr -d ta-zA-Z | sed -e "s/*([0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*) .*/1/" | tr -d [:space:]> d'un seul trait (sans les <> bien sur, ça passe sans problème.