#1 Le 20/09/2010, à 16:22
- Totor
[Mini Challenge/TP] Comprendre l’expansion de nom
Bonjour,
Bien souvent ls ou find sont utilisés à tord car l’expansion de nom est incomprise (voire inconnue).
Dans le but de bien comprendre ce mécanisme, je vous propose un petit TP :
Sans utiliser ls et find, lister tous les dossiers (et sous dossiers) bin contenu dans le dossier /usr (1 dossier par ligne).
Pour les plus avancés/courageux, contrainte supplémentaire : : Ne pas utiliser de boucle ni xargs.
EDIT : je vous invite à m'envoyer vos réponses par mail pour ne pas influencer les recherches.:D
Dernière modification par Totor (Le 20/09/2010, à 17:23)
-- Lucid Lynx --
Hors ligne
#2 Le 20/09/2010, à 16:26
- slasher-fun
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
Bonjour,
"Faites mon TP à ma place" quoi ?
Hors ligne
#3 Le 20/09/2010, à 17:16
- ehmicky
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
Edit : désolé, j'ai posté plutôt que d'envoyer par mail. Je viens de supprimer en speed ^^. J'envoie par MP
Dernière modification par ehmicky (Le 20/09/2010, à 17:25)
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
#4 Le 20/09/2010, à 17:22
- Totor
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
@slasher-fun : Je ne sais pas comment le prendre
@ehmicky : pas de contre-indication dans l'énoncé...
Dernière modification par Totor (Le 20/09/2010, à 17:26)
-- Lucid Lynx --
Hors ligne
#5 Le 20/09/2010, à 17:26
- slasher-fun
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
On dira que je suis parano alors ^^
Hors ligne
#6 Le 20/09/2010, à 17:31
- ehmicky
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
La réponse que j'ai envoyée était incomplète, je rajoute une ligne pour prendre en compte les répertoires cachés ^^
Edit : envoyé, reste plus qu'à voir les autres solutions proposées
Edit2 : par contre ma solution est seulement compatible Bash 4, et je trouve qu'elle est un peu lente, je sais pas si y'a moyen d'optimiser (benchmark : 1 minute 6 secondes)
Edit3 : j'ai proposé une seconde solution, cette fois compatible Bash 2 (envoi par MP à Totor), et plus performante (benchmark : 35 secondes).
On reste loin des 4 secondes de find
Edit4 : j'ai envoyé une correction pour que les répertoires soient affichés après leur contenu, comme l'option -depth de find (au passage le code que j'ai envoyé contient la ligne "return 0", que j'aurais pû supprimer sans que cela modifie quoi que ce soit)
Dernière modification par ehmicky (Le 20/09/2010, à 20:09)
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
#7 Le 20/09/2010, à 21:23
- Totor
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
@slasher-fun : en fait, je suis surpris que cela vienne d'un habitué du forum....
@ehmicky : je t'ai répondu.
Ma réponse sera donné le 22/09 12h (avec l'ensemble des autres réponses).
Dernière modification par Totor (Le 20/09/2010, à 21:24)
-- Lucid Lynx --
Hors ligne
#8 Le 20/09/2010, à 21:27
- slasher-fun
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
@slasher-fun : en fait, je suis surpris que cela vienne d'un habitué du forum....
Nan mais j'avais pas vu que tu l'étais aussi, comme c'était la rentrée ça sentait le retour des "faites mes devoirs à ma place". Mes excuses donc
Hors ligne
#9 Le 20/09/2010, à 21:29
- Totor
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
pas de soucis, je ne me formalise pas.
-- Lucid Lynx --
Hors ligne
#10 Le 20/09/2010, à 21:55
- ehmicky
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
Totor, je ne vois pas où est ma boîte "e-mail" Forum-Ubuntu (ni pour les messages reçus, ni ceux envoyés).
Sinon, j'attends aussi la participation des gens !
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
#11 Le 20/09/2010, à 22:13
- Totor
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
regarde ta mailbox
-- Lucid Lynx --
Hors ligne
#12 Le 20/09/2010, à 23:12
- sputnick
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
A voté
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne
#13 Le 20/09/2010, à 23:43
- ehmicky
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
Zut du coup, j'ai supprimé les scripts que je t'ai envoyé Totor, depuis la modification de l'énoncé. Y'a moyen que tu m'envoies à nouveau le dernier ?
Edit : c'est bon j'ai réécrit les deux scripts, et je les envoie.
Dernière modification par ehmicky (Le 20/09/2010, à 23:54)
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
#14 Le 21/09/2010, à 01:36
- AnsuzPeorth
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
Tu es démasqué Totor ... Avoue que tu passes un BEP
Sinon, pour la soluce, c'est trop facile, tu as donné la réponse dans un poste y a pas longtemps...
EDIT: J'avais mal lu l'énoncé, dsl pour la mauvaise réponse (faut que j'apprenne à lire moi !)
EDIT2: Bon j'envois ma soluce !
Dernière modification par AnsuzPeorth (Le 21/09/2010, à 01:54)
Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script (Hors ligne)
Hors ligne
#15 Le 21/09/2010, à 02:01
- ehmicky
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
Si Totor est plus jeune que moi, vu les solutions de ouf full-bash qu'il nous sort parfois, je vais avoir trop honte, moi Je m'attends à ce qu'il bosse au moins déjà dans le milieu
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
#16 Le 21/09/2010, à 07:09
- Totor
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
lo,
J'ai pris en compte les copies des 3 participants.
Seul sputnick a donné la réponse attendue (avec toutes les contraintes). Pour les autres, vous pouvez continuer à réfléchir
j'ai fini mes études il y a 12 ans
-- Lucid Lynx --
Hors ligne
#17 Le 21/09/2010, à 10:23
- Watael
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
ok! la soluce a priori, c'est pour quand...
aparte ne prend pas d'accent, c'est de l'italien !
comme a priori, qui est du latin !
Dernière modification par Watael (Le 21/09/2010, à 10:26)
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#18 Le 21/09/2010, à 10:35
- Totor
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
aparte ne prend pas d'accent, c'est de l'italien !
... tu m'as mis le doute (surtout que je suis loin d'un un pro dans ce domaine) ! du coup, j'ai fait une petite recherche
Edit : pour les solutions "Ma réponse sera donné le 22/09 12h (avec l'ensemble des autres réponses)."
Dernière modification par Totor (Le 21/09/2010, à 10:44)
-- Lucid Lynx --
Hors ligne
#19 Le 21/09/2010, à 10:43
- Watael
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
moouais... au temps pour moi, malgré tout JE le laisserai sans accent
la semaine, pour s'interroger
mercredi, pour les soluces
vendredi, pour le reste
lol
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#20 Le 21/09/2010, à 10:48
- Totor
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
as you want
heu bah non, ~3 jours c'est amplement suffisant (demain quoi ) !
edit : tu as donné une réponse (je n'ai rien te concernant) ?
Dernière modification par Totor (Le 21/09/2010, à 10:49)
-- Lucid Lynx --
Hors ligne
#21 Le 21/09/2010, à 10:57
- Watael
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
non, je n'ai rien posté : je ne savais pas si une fonction récursive serait considérée comme une boucle...
vivement demain !
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#22 Le 21/09/2010, à 11:03
- Totor
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
envoie
-- Lucid Lynx --
Hors ligne
#23 Le 21/09/2010, à 11:54
- Watael
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
non, bah, en fait non, puisque la supposée fonction utiliserait une boucle for
sans ls, ni find, et sans boucle...je sèche.
vivement mercredi prochain : demain
Dernière modification par Watael (Le 21/09/2010, à 11:57)
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#24 Le 21/09/2010, à 12:09
- Totor
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
les boucles ne sont pas interdites dans l’immédiat.
mais c'est étonnant de ta part de ne pas avoir l'une des solutions sans boucle
EDIT : en fait, je me rends compte d'une chose... je n'ai pas réagi aux écrits de ehmicky mais les solutions sans boucle ne sont valable qu'en bash >= 4 . C'est peut-être pourquoi tu ne l'as pas
Dernière modification par Totor (Le 21/09/2010, à 12:18)
-- Lucid Lynx --
Hors ligne
#25 Le 21/09/2010, à 13:55
- sputnick
Re : [Mini Challenge/TP] Comprendre l’expansion de nom
Ya moyen en bash < 4 mais c'est moins propre
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne