Pages : 1
#1 Le 14/11/2011, à 15:37
- ammar
explication
bonjour est ce que vous pouvez m expliquez la role de cette fonction
merci
function ij
{
local i
local j
i=`echo $1 | cut -d c -f1 | cut -d l -f2`
j=`echo $1 | cut -d c -f2 `
echo $i $j
}
Hors ligne
#2 Le 14/11/2011, à 15:48
- Haleth
Re : explication
Ben, ca prend le premier argument ($1).
On le coupe en morceau séparé par c, on prend le premier morceau.
Idem pour l. On affiche.
On reprend $1, on affiche le 2eme morceau.
Exemple, avec $1 = 'alzcr', on obtient 'z r'
Dernière modification par Haleth (Le 14/11/2011, à 15:50)
Ubuntu is an ancien African word which means "I can't configure Debian"
Because accessor & mutator are against encapsulation (one of OOP principles), good OOP-programmers do not use them. Obviously, procedural-devs do not. In fact, only ugly-devs are still using them.
Hors ligne
#3 Le 14/11/2011, à 15:48
- Michel Leunen
Re : explication
i=`echo $1 | cut -d c -f1 | cut -d l -f2`
Ceci prend dans une chaîne de caractères tout ce qui est avant 'l' et après 'c'.
j=`echo $1 | cut -d c -f2 `
Coupe tout ce qui est avant 'c'.
echo $i $j
Affiche le résultat du premier concaténé avec le second.
L'ensemble est une fonction qui est sensée couper un string en deux et inverser les deux parties.
Michel Leunen
http://linux.leunen.com
Hors ligne
#4 Le 14/11/2011, à 15:59
- ammar
Re : explication
merci beaucoup,j ai bien compris
Hors ligne
#5 Le 14/11/2011, à 20:48
- ehmicky
Re : explication
Salut,
Cela pourrait aussi être écrit :
function ij2
{
local Var="${1%%c*}"
echo "${Var##*l} ${1##*c}"
}
En plus, c'est 100 fois plus rapide :
$ time for i in {1..10000} ; do ij2 "azlkjhckh" > /dev/null ; done
real 0m2.161s
$ time for i in {1..10000} ; do ij "azlkjhckh" > /dev/null ; done
real 3m36.825s
Dernière modification par ehmicky (Le 14/11/2011, à 20:56)
Stego++, bibliothèque libre de stéganographie (avec cryptographie), à venir !
Besoin de votre aide :
Stats sur les compilateurs C++ les plus utilisés
Comment utiliser les archetypes C++ ?
Hors ligne
Pages : 1