On Mon, 10 Feb 2003 11:06:11 -0400
"Christophe PEREZ" <[EMAIL PROTECTED]> wrote:

> Le Wed, 18 Dec 2002 16:27:34 +0000, jipe a indiquait :
> 
> >> IPCONF=($(/sbin/ifconfig ppp0)); echo ${IPCONF[5]#*:}
> 
> Au fait, jipe, pour pinailler, comment met-on ces deux commandes en 1
> seule ?
> C'est possible d'ailleurs ?
> 
> Un b�te remplacement donne :
> $ echo ${($(/sbin/ifconfig ppp0))[5]#*:}
> bash: ${($(/sbin/ifconfig ppp0))[5]#*:}: bad substitution
> 
> -- 
> Christophe PEREZ
> 
> 

marche pas :)

il faut passer les 2 commandes pour que la deuxi�me fasse la substitution. en terme 
d'efficacit�, c'est tout aussi rapide.
tu peux faire de ces commandes une fonction int�gr�e � bash -> encore plus rapide. il 
suffit de rajouter cette fonction dans /etc/bashrc par exemple.

ipq () 
{ 
    if CNX=($(/sbin/ifconfig $1 2>/dev/null)); then
        case $1 in 
            eth*)
                echo ${CNX[6]#*:}
            ;;
            ppp*)
                echo ${CNX[5]#*:}
            ;;
        esac;
    fi
}

cette fonction donne l'ip sur pppX ou ethX. suffit de lui passer l'interface en 
argument. r�sultat quasi imm�diat, malgr� l'appel � ifconfig.

ipq ppp0 et hop :)

j'ai aussi int�gr� un g�n�rateur de mots de passe dans mon bash (� moi). des fois que 
�a int�resse quelqu'un. (d'ailleurs on peut int�grer plein de fonctions si on veut 
...) 
attention, il ne marche pas sur les premi�res versions 2.05 de bash. gros probl�me 
avec les g�n�rations de nombres al�atoires sur une base de 2^n ... Pour ces versions, 
j'en ai fait un autre :P

genmdp () 
{ 
    PASSWRD=;
    (( "$1" )) && 
string="0123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ_@+-=" && for (( 
a=0 ; a<$1 ; a++ ))
    do
        PASSWRD=$PASSWRD${string:$((RANDOM%64)):1};
    done
}

on donne en argument le nombre de caract�res du mot de passe � g�n�rer, et y'a plus 
qu'� r�cup�rer le r�sultat dans la variable $PASSWRD.
encodage sur 64 caract�res dont les caract�res "ambigus" ont �t� supprim�s. cad les 
O,I et l qu'on peut confondre avec 0 ou 1. bien sur � utiliser dans un script pour ne 
pas laisser tra�ner un $PASSWRD qqpart :)

genmdp 12; echo $PASSWRD 
et �a donne un truc comme �a -> S6N75+Q56y6Z ou xKDQrjK@8hVG

puis bien sur PASSWRD=
pour effacer ...

bye
jipe
(qui s'amuse bien avec son nunux:)

Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft?
Rendez-vous sur "http://www.mandrakestore.com";

Répondre à