[sam jan 27 2007] [20:53:45] <xorg62> quand on veux faire 2 commande a la suite on utilise les pipe
[sam jan 27 2007] [20:53:54] <xorg62> je me trompe?
[sam jan 27 2007] [20:53:56] <LVEB> On pourra faire une entracte a 21 heures ?
[sam jan 27 2007] [20:53:59] <gapz> xorg62: je vais expliquer cela tout de suite ne y'en fait pas
[sam jan 27 2007] [20:54:03] <FiFouille> xorg62: si on veut faire de la plomberi avec la sortie du premier pour l'entrée du deuxième, oui
[sam jan 27 2007] [20:54:05] <animimotus> LVEB: lol
[sam jan 27 2007] [20:54:09] Mode Modes de canaux : protection de sujet, aucun message de l'extérieur, aucune couleur autorisée
[sam jan 27 2007] [20:54:09] Créé Ce canal a été crée le 26.11.2006 07:43:01.
[sam jan 27 2007] [20:54:15] Mode gapz définit le mode du canal à « Modéré ».
[sam jan 27 2007] [20:54:22] <gapz> Les pipes
[sam jan 27 2007] [20:54:29] <gapz> tant attendu ;-)
[sam jan 27 2007] [20:54:32] <gapz> D'une manière général les pipes sont tout une gamme de ce que j'appele opérateur. Par exemple les opérateurs de redirection sont des pipes. Ils existent donc aussi une autre gamme d'opérateur permettant de travailler avec les entrées/sorties. La plupart du temps lorsque l'on parle de pipe on parle seulement de "|"
[sam jan 27 2007] [20:55:02] <gapz> Présentation de "|"
[sam jan 27 2007] [20:55:08] <gapz> Cet opérateur permet d'envoyer la sortie standard d'un programme vers l'entrée standard d'un second programme, cela permet ainsi l'enchaînement des commandes. Par exemple : "ls | wc -l". La sortie standard de "ls" devient l'entrée standard de "wc -l".
[sam jan 27 2007] [20:55:13] Mode gapz définit le mode du canal à « Non modéré ».
[sam jan 27 2007] [20:55:28] <xorg62> et ben voila
[sam jan 27 2007] [20:55:33] <FiFouille> et faut vraiment le voir comme une plomberie
[sam jan 27 2007] [20:55:50] <FiFouille> une vanne | un chauffe eau | un mitigeur | votre douche
[sam jan 27 2007] [20:55:57] <xorg62> c'est pour enchainé 2 commande
[sam jan 27 2007] [20:56:01] <LVEB> ^^
[sam jan 27 2007] [20:56:02] <FiFouille> le flux (de texte) passe à travers chaque et subit un traitement
[sam jan 27 2007] [20:56:08] <xorg62> =)
[sam jan 27 2007] [20:56:36] <gapz> Autre exemple : "cat fichier | wc -l", "ls -l | sort" (sort permet de trier les lignes d'un fichier texte, pour plus d'information "man sort"). Vous pouvez bien sûr étendre cela à plus de deux programmes : "cat fichier | wc -l | wc -L". Vous pouvez aussi utiliser les redirections vu précédemment : "ls -la > fichier | wc -l" etc. Dans le cas de "ls -la > fichier" nous pouvons remarquer qu'il n'y a rien sur stdout ou stderr. Pour pallier à cela le program
[sam jan 27 2007] [20:56:42] <LVEB> :)
[sam jan 27 2007] [20:57:14] <gapz> je vais pas trop vite j'espère ?
[sam jan 27 2007] [20:57:21] <gapz> tout le monde comprend bien le système ?
[sam jan 27 2007] [20:57:24] <xorg62> c'est impec
[sam jan 27 2007] [20:57:25] <FiFouille> gapz: argl, l'erreur classique :p
[sam jan 27 2007] [20:57:39] <gapz> FiFouille: ou ? ou ?
[sam jan 27 2007] [20:57:39] Joindre Tartopom entre sur le canal (n=Tartopom@ip-192.net-82-216-243.rev.numericable.fr).
[sam jan 27 2007] [20:57:41] <LVEB> progra...
[sam jan 27 2007] [20:57:41] <FiFouille> ls -la > fichier | wc -l ça marchera pas malheureusement
[sam jan 27 2007] [20:57:42] <Adri2000> gapz: coupé : "Pour pallier à cela le progra"
[sam jan 27 2007] [20:57:47] <Zic_> j'y vais moi :/ petit problème
[sam jan 27 2007] [20:57:51] <gapz> FiFouille: justement
[sam jan 27 2007] [20:57:53] <Zic_> désolé :|
[sam jan 27 2007] [20:57:53] <Yumi`> et les commande secute en meme temp ou lune apres lautre ?
[sam jan 27 2007] [20:57:58] <Zic_> bonne soirée, et bon cours
[sam jan 27 2007] [20:58:00] <gapz> c'est fait exprès FiFouille
[sam jan 27 2007] [20:58:06] <gapz> bonne soirée Zic_
[sam jan 27 2007] [20:58:14] <Yumi`> sexecute
[sam jan 27 2007] [20:58:25] <gapz> Yumi`: la premère en première, la deuxième en deuxième etc..
[sam jan 27 2007] [20:58:35] <Yumi`> ok gapz merci
[sam jan 27 2007] [20:58:41] <FiFouille> Yumi`: en meme temps, et elles font le traitement que quand elles ont qqch en entrée
[sam jan 27 2007] [20:58:50] <gapz> car elle redirige ça sortie vers l'entrée de l'autre donc il faut qu'elle soit finis
[sam jan 27 2007] [20:58:54] Quitter Zic_ a quitté ce serveur ("Quitte").
[sam jan 27 2007] [20:58:59] <FiFouille> gapz: mais non :p
[sam jan 27 2007] [20:59:03] <xorg62> a oui
[sam jan 27 2007] [20:59:04] <Yumi`> heuuu
[sam jan 27 2007] [20:59:09] Mode FiFouille définit le mode du canal à « Modéré ».
[sam jan 27 2007] [20:59:10] <gapz> FiFouille: hein ?
[sam jan 27 2007] [20:59:12] <FiFouille> juste une remarque
[sam jan 27 2007] [20:59:19] <FiFouille> les pipes ( | )
[sam jan 27 2007] [20:59:25] <FiFouille> c'est une lecture bloquante
[sam jan 27 2007] [20:59:35] <FiFouille> donc par exemple ls | wc -l
[sam jan 27 2007] [20:59:56] <FiFouille> wc est lancé, mais bloque (et c'est vraiment ça) en lecture, il attend que qqch lui vienne pour appliquer un traitement
[sam jan 27 2007] [20:59:56] Joindre DracarD entre sur le canal (n=j@11.red-62-57-21.user.auna.net).
[sam jan 27 2007] [21:00:04] <FiFouille> ls | wc -l le montre pas vraiment
[sam jan 27 2007] [21:00:27] <FiFouille> mais par exemple find / | grep chose
[sam jan 27 2007] [21:00:40] <gapz> ha oui exact :)
[sam jan 27 2007] [21:00:43] <FiFouille> grep va afficher une ligne a chaque fois que find lui fournira une ligne avec un 'chose' dedans
[sam jan 27 2007] [21:00:46] Mode FiFouille définit le mode du canal à « Non modéré ».
[sam jan 27 2007] [21:00:56] <xorg62> glxinfo | grep rendering
[sam jan 27 2007] [21:00:59] <xorg62> par exemple
[sam jan 27 2007] [21:01:13] <FiFouille> mais encore une fois, c'est de la plomberie
[sam jan 27 2007] [21:01:27] <FiFouille> votre chauffe eau va pas envoyer 200 litres d'eau une fois qu'il a fini de chauffer, il va le faire au fur et a mesure
[sam jan 27 2007] [21:01:49] <Yumi`> donc en gros une commande sexecute elle envoie et quand c'est reçu lautre commence
[sam jan 27 2007] [21:01:51] Quitter Saucisson a quitté ce serveur (Read error: 110 (Connection timed out)).
[sam jan 27 2007] [21:01:57] <gapz> Yumi`: non :-)
[sam jan 27 2007] [21:02:01] <Yumi`> raaa
[sam jan 27 2007] [21:02:04] <gapz> regarde bien ce qu'a marqué FiFouille
[sam jan 27 2007] [21:02:15] <gapz> c'est progressif
[sam jan 27 2007] [21:02:38] <Yumi`> ok a yai jai compris
[sam jan 27 2007] [21:02:42] <FiFouille> Yumi`: c'est un peu comme à la caisse enregistreuse
[sam jan 27 2007] [21:02:52] <Yumi`> vi vi :)
[sam jan 27 2007] [21:02:56] <FiFouille> la caissière fait rien tant qu'il y a pas un article, mais dès qu'il y en a un, elle le traite
[sam jan 27 2007] [21:03:24] Mode gapz définit le mode du canal à « Modéré ».
[sam jan 27 2007] [21:03:28] <gapz> Présentation de "&"
[sam jan 27 2007] [21:03:41] <gapz> Cet opérateur permet de lancer simulanément deux commandes dont la première sera lancé en arrière plan. Par exemple "ls & ls -la". Vous pouvez aussi l'utiliser pour mettre un programme en arrière plan : "ed &". Pour reprendre la main sur ce programme il faut utiliser la commande fg (bien entendu la gestion des processus sort du cadre de ce cours alors nous ne verrons pas d'autre cas, par exemple plusieurs processus en arrière plan, comment les tuer...)
[sam jan 27 2007] [21:03:48] Mode gapz définit le mode du canal à « Non modéré ».
[sam jan 27 2007] [21:04:01] <gapz> on pourra en parler à la fin si vous voulez... ;-)
[sam jan 27 2007] [21:04:14] <shadok> fg = foreground
[sam jan 27 2007] [21:04:21] <FiFouille> bg
[sam jan 27 2007] [21:04:27] Joindre barsanuphe entre sur le canal (n=barsanup@gra33-1-82-230-167-222.fbx.proxad.net).
[sam jan 27 2007] [21:04:28] <FiFouille> = background (et man bash pour le reste)
[sam jan 27 2007] [21:05:00] <gapz> pas de question sur "&" ?
[sam jan 27 2007] [21:05:18] <FiFouille> et && et & c'est pas la meme chose, on verra ça plus tard aussi ;)
[sam jan 27 2007] [21:05:19] <animimotus> oui pour lancer firefox dans un terminal, on fait firefox& mais ça renvoit encore les erreurs ?
[sam jan 27 2007] [21:05:33] Quitter DracarD a quitté ce serveur ("Me'n vaig").
[sam jan 27 2007] [21:05:38] <gapz> firefox 2>/dev/null &
[sam jan 27 2007] [21:05:39] <shadok> suffit de les rediriger vers /dev/null animimotus :)
[sam jan 27 2007] [21:05:42] <FiFouille> animimotus: oui, les sorties restent attachées au terminal
[sam jan 27 2007] [21:05:43] <shadok> vouala
[sam jan 27 2007] [21:05:56] <animimotus> ok )
[sam jan 27 2007] [21:06:12] <gapz> Présentation de "&&"
[sam jan 27 2007] [21:06:18] <gapz> Pour pouvoir bien comprendre ce que fait cet opérateur il faut d'abord que je vous parle rapidement des codes de retour : quand vous lancez une commande, si elle se termine correctement alors le code de retour est "0", ce qui correspond à un succès, dans le cas contraire le code de retour est différent de 0 (bien entendu les codes de retour différent de 0 ont une signification, mais cela sort du cadre du cours encore une fois). Si par exemple vous rentr
[sam jan 27 2007] [21:06:18] <xorg62> a quand un introduction pour le VI (je comprend pas toute les touche) =)
[sam jan 27 2007] [21:06:19] <FiFouille> animimotus: man nohup aussi
[sam jan 27 2007] [21:06:46] <FiFouille> xorg62: je dois en faire une (mais chut)
[sam jan 27 2007] [21:06:48] Mode FiFouille définit le mode du canal à « Modéré ».
[sam jan 27 2007] [21:06:52] Quitter MisterMatt a quitté ce serveur (Client Quit).
[sam jan 27 2007] [21:06:57] <Adri2000> gapz: coupé encore :(
[sam jan 27 2007] [21:07:05] <Adri2000> "Si par exemple vous rent"
[sam jan 27 2007] [21:07:10] <gapz> Adri2000: mince je vois tout chez moi :-/
[sam jan 27 2007] [21:07:29] <gapz> Si par exemple vous rentrez une commande erronée, le code de retour sera différent de 0 : "fgsfdg". Pour voir le code de retour de la dernière commande lancé : "echo $?" (pour le moment il n'est pas necessaire de comprendre cette dernière commande). Donc, pour en revenir à l'opérateur "&&", il permet de lancer une commande si seulement la première (celle à gauche de l'opérateur) s'est correctement terminé : "ls && ls /". Si la commande "ls" se termine
[sam jan 27 2007] [21:07:49] <Adri2000> Si la commande "ls" se termine...
[sam jan 27 2007] [21:08:03] <gapz> Si la commande "ls" se termine correctement alors "ls /" sera exécutée. Un second exemple : "fdgfdsg && ls"
[sam jan 27 2007] [21:08:05] Partage th01 a quitté ce canal.
[sam jan 27 2007] [21:08:18] <Adri2000> (fais des paragraphes plus petits :))
[sam jan 27 2007] [21:08:18] <gapz> mince je pense pas que ça vient de mon client -_-
[sam jan 27 2007] [21:08:29] Mode gapz définit le mode du canal à « Non modéré ».
[sam jan 27 2007] [21:09:01] Joindre gaic entre sur le canal (n=gapz@88-139-61-111.adslgp.cegetel.net).
[sam jan 27 2007] [21:09:06] <FiFouille> y'a d'autres gens chez qui ca passe pas ?
[sam jan 27 2007] [21:09:10] <gapz> des questions ?
[sam jan 27 2007] [21:09:14] <gapz> FiFouille: ça passe chez toi ?
[sam jan 27 2007] [21:09:17] <FiFouille> Adri2000: sinon faut vérifier ton MTU :p
[sam jan 27 2007] [21:09:22] <FiFouille> gapz: moi ça marche bien
[sam jan 27 2007] [21:09:26] <Remi> chez moi ça passe pas non plus ...
[sam jan 27 2007] [21:09:35] <gapz> xchat Remi ?
[sam jan 27 2007] [21:09:45] <Remi> non Konversation
[sam jan 27 2007] [21:09:49] <Adri2000> xchat 2.8.0 pour moi
[sam jan 27 2007] [21:09:49] <gapz> ha oui
[sam jan 27 2007] [21:10:11] <xorg62> xchat 0.13 chez moi
[sam jan 27 2007] [21:10:18] <LVEB> xchat, passe pas
[sam jan 27 2007] [21:10:18] <gapz> bon bon, je vais copier petite partie par petite partie
[sam jan 27 2007] [21:10:24] <dim_m_> gapz: irssi ?
[sam jan 27 2007] [21:10:28] <gapz> oui
[sam jan 27 2007] [21:10:29] <FiFouille> chuteu
[sam jan 27 2007] [21:10:36] <dim_m_> moi ca marche
[sam jan 27 2007] [21:10:37] <FiFouille> bon sinon, y'a des gens qui ont une question, quelle qu'elle soit
[sam jan 27 2007] [21:10:46] <FiFouille> (mais pas sur son client irc ou autre truc rien à voir :p )
[sam jan 27 2007] [21:10:46] <gapz> oui et les questions ? :)-
[sam jan 27 2007] [21:10:59] Quitter pascal_ a quitté ce serveur (Remote closed the connection).
[sam jan 27 2007] [21:11:07] <gapz> on dira que non alors
[sam jan 27 2007] [21:11:11] <gapz> Présentation de "||"
[sam jan 27 2007] [21:11:36] <gapz> C'est simplement l'inverse de "&&". La commande à gauche de l'opérateur est éxécutée seulement si le code de retour de la première commande est différent de 0 : "fhgfdsjk || ls", dans ce cas "ls" sera exécuté.
[sam jan 27 2007] [21:11:40] <LVEB> +m
[sam jan 27 2007] [21:11:50] <gapz> LVEB: non c'est pas le basard t'en fait pas
[sam jan 27 2007] [21:11:54] <gapz> "ls | ls -l", dans celui ci "ls -l" ne sera pas exécuté si "ls" produit un code de retour égal à 0.
[sam jan 27 2007] [21:12:08] <gapz> si jamais vous avez des questions sur quoi que ce soit, si jamais je vais trop vite
[sam jan 27 2007] [21:12:21] <gapz> n'hésitez surtout pas à faire les exemples en local
[sam jan 27 2007] [21:12:39] <FiFouille> bon, répétition tout de même
[sam jan 27 2007] [21:12:50] <gapz> oui c'est sur :)
[sam jan 27 2007] [21:12:56] <FiFouille> avec && il arrête d'évaluer dès qu'il a un code de retour faux pour un terme
[sam jan 27 2007] [21:13:10] <FiFouille> avec || il arrête d'évaluer dès qu'il a un code de retour vrai pour un terme
[sam jan 27 2007] [21:14:32] Joindre LVEB_ entre sur le canal (n=leo@mon75-7-82-228-48-95.fbx.proxad.net).
[sam jan 27 2007] [21:14:35] <gapz> Il reste enfin un opérateur, ";"
[sam jan 27 2007] [21:14:39] <gapz> Cet opérateur est équivalent à un retour à la ligne, c'est à dire que "ls; ls -l" éxecutera "ls" dans un premier temps, et une fois la première commande finie, quelque soit le code de retour "ls -l" sera exécuté.
[sam jan 27 2007] [21:15:01] <gapz> c'est pas vraiment d'une grande utilité mais ça peut aider
[sam jan 27 2007] [21:15:06] <animimotus> on peut voir un exemple pratique et concret avec || ?
[sam jan 27 2007] [21:15:11] <animimotus> (avec du sens :)
[sam jan 27 2007] [21:15:17] <LVEB_> :)
[sam jan 27 2007] [21:15:21] <gapz> animimotus: tout de suite
[sam jan 27 2007] [21:16:00] * gapz réfléchis :)
[sam jan 27 2007] [21:16:29] <LVEB_> et lentement en plus
[sam jan 27 2007] [21:16:55] <gapz> animimotus: avec test par exemple
[sam jan 27 2007] [21:17:04] <FiFouille> test -d /tmp/pouet || mkdir /tmp/pouet
[sam jan 27 2007] [21:17:13] <gapz> tu regardes si un fichier existe, et sinon tu en créer un
[sam jan 27 2007] [21:17:17] <gapz> FiFouille: voila :)
[sam jan 27 2007] [21:17:20] Quitter LVEB_ a quitté ce serveur (Client Quit).
[sam jan 27 2007] [21:17:21] <animimotus> cool ça
[sam jan 27 2007] [21:17:24] <FiFouille> dans ce cas ci c'est un dossier ;)
[sam jan 27 2007] [21:17:45] <animimotus> -d pour directory
[sam jan 27 2007] [21:17:51] <animimotus> -f file ?
[sam jan 27 2007] [21:18:01] <gapz> man test
[sam jan 27 2007] [21:18:03] <FiFouille> animimotus: oui, man bash ;)
[sam jan 27 2007] [21:18:05] <gapz> ça te dit tout ;-)
[sam jan 27 2007] [21:18:10] <animimotus> :)
[sam jan 27 2007] [21:18:14] <LVEB> :)
[sam jan 27 2007] [21:18:19] <FiFouille> gapz: ouep, man test c'est encore plus clair :p
[sam jan 27 2007] [21:18:28] <gapz> :-)
[sam jan 27 2007] [21:18:46] <gapz> bon maintenant nous allons parlé d'un outil surpuissant que va vous présentez FiFouille
[sam jan 27 2007] [21:18:55] <gapz> j'ai nommé les expressions régulières
[sam jan 27 2007] [21:19:00] <gapz> allez FiFouille, à toi !
[sam jan 27 2007] [21:19:18] <animimotus> lol
[sam jan 27 2007] [21:35:01] Mode ChanServ donne les privilèges d'opérateur du canal à skateinmars.
[sam jan 27 2007] [21:35:01] Mode skateinmars définit le mode du canal à « Modéré ».
[sam jan 27 2007] [21:35:02] Mode skateinmars prend les privilèges d'opérateur du canal à skateinmars.
[sam jan 27 2007] [21:35:02] <FiFouille> bon, alors, c'est maintenant que tout le monde part normalement
[sam jan 27 2007] [21:35:02] Joindre leo__ entre sur le canal (n=leo@mon75-7-82-228-48-95.fbx.proxad.net).
[sam jan 27 2007] [21:35:02] Partage shadok a quitté ce canal.
[sam jan 27 2007] [21:35:02] Joindre shadok entre sur le canal (n=shad@unaffiliated/shadok).
[sam jan 27 2007] [21:35:02] <FiFouille> les expressions rationnelles donc, souvent appelées expressions régulières, regex ou regular expressions
[sam jan 27 2007] [21:35:02] <FiFouille> alors c'est simple, c'est une notation qui permet de décrire des chaînes de caractères
[sam jan 27 2007] [21:35:02] <FiFouille> ça permet d'en reconnaître ou de les manipuler
[sam jan 27 2007] [21:35:02] <FiFouille> accessoirement ça permet aussi (d'impressioner|de traumatiser) (sa copine|ses copains|son patron)
[sam jan 27 2007] [21:35:02] Mode gapz donne la permission de parler à shadok.
[sam jan 27 2007] [21:35:02] <FiFouille> pour commencer on va attaquer la chose avec des exemples simple, on va chercher au dictionnaire
[sam jan 27 2007] [21:35:02] <FiFouille> notre dictionnaire ici, sera /usr/share/dict/french
[sam jan 27 2007] [21:35:02] <FiFouille> premier exemple, les verbes en 'er'
[sam jan 27 2007] [21:35:02] <FiFouille> alors il nous faut parcourir le fichier en question, et sortir chaque ligne qui se finit par 'er'
[sam jan 27 2007] [21:35:02] <FiFouille> l'outil utilisé : grep
[sam jan 27 2007] [21:35:02] <FiFouille> grep 'er$' /usr/share/dict/french
[sam jan 27 2007] [21:35:02] <FiFouille> tout simplement
[sam jan 27 2007] [21:35:02] <FiFouille> et l'opérateur $ sert donc pour signaler la fin de ligne
[sam jan 27 2007] [21:35:02] Mode FiFouille définit le mode du canal à « Non modéré ».
[sam jan 27 2007] [21:35:02] <FiFouille> tout le monde a testé ? ça sort ce que ça doit ?
[sam jan 27 2007] [21:35:02] <FiFouille> bon, sinon, comme d'hab, des questions ?
[sam jan 27 2007] [21:35:02] <animimotus> ouep
[sam jan 27 2007] [21:35:02] <FiFouille> animimotus: oui ?
[sam jan 27 2007] [21:35:02] <gapz> parfait :-)
[sam jan 27 2007] [21:35:02] <animimotus> (non je disais oui ça marche :p)
[sam jan 27 2007] [21:35:02] <FiFouille> en fait y'en a plus qu'un qui suit, c'est encore mieux que prévu :p
[sam jan 27 2007] [21:35:02] <FiFouille> bon, je continue sans le mute, c'est plus agréable
[sam jan 27 2007] [21:35:02] <Phlogistique> mh, il semble que nôtre dico soit pas en UTF8 oO
[sam jan 27 2007] [21:35:02] <animimotus> Phlogistique: c'est ce que je me disais
[sam jan 27 2007] [21:35:02] <Adri2000> /usr/share/dict/french: ISO-8859 C program text
[sam jan 27 2007] [21:35:02] <FiFouille> pour les gens qui n'ont pas d'utf-8, une solution
[sam jan 27 2007] [21:35:02] <Adri2000> :)
[sam jan 27 2007] [21:35:02] <leo__> Effectivement...
[sam jan 27 2007] [21:35:02] <Yumi`> ouai
[sam jan 27 2007] [21:35:02] Mode FiFouille définit le mode du canal à « Modéré ».
[sam jan 27 2007] [21:35:02] <FiFouille> iconv -f ISO-8859-15 -t UTF-8 /usr/share/dict/french > /tmp/french.utf8
[sam jan 27 2007] [21:35:02] <gapz> :)
[sam jan 27 2007] [21:35:02] Mode FiFouille définit le mode du canal à « Non modéré ».
[sam jan 27 2007] [21:35:02] <leo__> et apres ya les accents ?
[sam jan 27 2007] [21:35:02] <FiFouille> donc iconv va transformer en allant d'un encoding ISO vers UTF et rediriger vers /tmp/french.utf8
[sam jan 27 2007] [21:35:02] <FiFouille> application de ce qu'on a vu avec gapz ;)
[sam jan 27 2007] [21:35:02] <FiFouille> donc maintenant, on fera
[sam jan 27 2007] [21:35:02] <animimotus> cp ?
[sam jan 27 2007] [21:35:02] <FiFouille> grep 'er$' /tmp/french.utf8
[sam jan 27 2007] [21:35:02] <FiFouille> animimotus: cp ? pour faire quoi ?
[sam jan 27 2007] [21:35:02] <xorg62> cp copier coller je croi non?
[sam jan 27 2007] [21:35:02] <animimotus> bah ça redirige dans tmp ?
[sam jan 27 2007] [21:35:02] <Phlogistique> CoPy
[sam jan 27 2007] [21:35:02] <Phlogistique> pour CoPier les fichiers
[sam jan 27 2007] [21:35:02] <FiFouille> animimotus: oui, tu vas avoir un fichier dans /tmp/ appelé french.utf8 et qui sera dans le bon encoding/charset
[sam jan 27 2007] [21:35:02] <animimotus> (lol mais je sais pour cp :p)
[sam jan 27 2007] [21:35:02] <leo__> :p
[sam jan 27 2007] [21:35:02] <animimotus> FiFouille: bah on écrase pas l'ancien ? oO
[sam jan 27 2007] [21:35:02] <FiFouille> il faut savoir que iconv sort le document 'transformé' sur la sortie standard et on redirige dans un fichier
[sam jan 27 2007] [21:35:02] <Phlogistique> FiFouille: encodage plutôt :p
[sam jan 27 2007] [21:35:02] <animimotus> (hs, je sais)
[sam jan 27 2007] [21:35:02] <FiFouille> animimotus: on casse pas l'existant, c'est mal :p
[sam jan 27 2007] [21:35:02] Pseudo leo__ est maintenant connu sous le nom de LVEB_.
[sam jan 27 2007] [21:35:02] <animimotus> arf :p
[sam jan 27 2007] [21:35:02] <FiFouille> Phlogistique: encodage pour unicode, charset pour 8859-15, mais bon, troll chut
[sam jan 27 2007] [21:35:02] <FiFouille> alors
[sam jan 27 2007] [21:35:02] <FiFouille> exemple deux maintenant
[sam jan 27 2007] [21:35:02] Pseudo LVEB est maintenant connu sous le nom de LVEB__.
[sam jan 27 2007] [21:35:02] <gapz> hehe
[sam jan 27 2007] [21:35:02] <Phlogistique> animimotus: non, sinon les programmes qui utilisent l'ancien seraient tout désorientés
[sam jan 27 2007] [21:35:02] <FiFouille> on voudrait ce qui _commence_ par asbol
[sam jan 27 2007] [21:35:02] <FiFouille> grep '^asbol' /tmp/french.utf8 par exemple
[sam jan 27 2007] [21:35:02] Pseudo LVEB_ est maintenant connu sous le nom de LVEB.
[sam jan 27 2007] [21:35:02] Joindre daniel44 entre sur le canal (n=daniel44@lns-bzn-29-82-248-245-28.adsl.proxad.net).
[sam jan 27 2007] [21:35:02] <LVEB> :)
[sam jan 27 2007] [21:35:02] <FiFouille> vous l'aurez compris, ^ c'est le début de la ligne
[sam jan 27 2007] [21:35:02] <FiFouille> maintenant si vous voulez avoir _exactement_ la ligne contenant 'coucou'
[sam jan 27 2007] [21:35:02] <FiFouille> elle doit commencer par coucou et finir par coucou, tout simplement
[sam jan 27 2007] [21:35:02] <FiFouille> grep '^coucou$' /tmp/french.utf8
[sam jan 27 2007] [21:35:02] <LVEB>
[sam jan 27 2007] [21:35:03] <FiFouille> alors maintenant, l'opérateur '.'
[sam jan 27 2007] [21:35:03] <FiFouille> en fait . représente n'importe quel caractère
[sam jan 27 2007] [21:35:03] <FiFouille> exemple, les mots de 4 lettres commençant par t et finissant par t
[sam jan 27 2007] [21:35:03] <FiFouille> grep '^t..t$' /tmp/french.utf8
[sam jan 27 2007] [21:35:03] <animimotus> grep '^asbol' /tmp/french.utf8 <------- ne renvoit rien, les mots en asbol- sont rares en français, sauf si on a de la chance :)
[sam jan 27 2007] [21:35:03] <FiFouille> tout le monde se retrouve avec tout, trot, tort, toit, test, ... ?
[sam jan 27 2007] [21:35:03] <FiFouille> animimotus: tu es sur que ton fichier /tmp/french.utf8 est rempli ?
[sam jan 27 2007] [21:35:03] <FiFouille> animimotus: moi j'ai une dizaine de sorties
[sam jan 27 2007] [21:35:03] <animimotus> $ grep '^bol' /tmp/french.utf8 marche chez moi
[sam jan 27 2007] [21:35:03] <animimotus> asbol, j'ai pas d'bol :)
[sam jan 27 2007] [21:35:03] <FiFouille> argl
[sam jan 27 2007] [21:35:03] <FiFouille> oui non, grep '^absol' en fait
[sam jan 27 2007] [21:35:03] <animimotus> ah
[sam jan 27 2007] [21:35:03] <FiFouille> ça m'apprendra à pas faire de copier coller de mon texte :p
[sam jan 27 2007] [21:35:03] <animimotus> cf gapz :p
[sam jan 27 2007] [21:35:03] <LVEB> @fifouille oui
[sam jan 27 2007] [21:35:03] <Phlogistique> Moi j'ai rien qui commence par asbol :'(
[sam jan 27 2007] [21:35:03] <FiFouille> bon, jusqu'à présent tout le monde suit ?
[sam jan 27 2007] [21:35:03] <animimotus> oui
[sam jan 27 2007] [21:35:03] <Phlogistique> oui
[sam jan 27 2007] [21:35:03] <animimotus> (la preuve :p)
[sam jan 27 2007] [21:35:03] <LVEB> oui
[sam jan 27 2007] [21:35:03] <FiFouille> absol ... ument, ution, u désolé pour l'erreur
[sam jan 27 2007] [21:35:03] <gapz> :]
[sam jan 27 2007] [21:35:03] <Yumi`> oui
[sam jan 27 2007] [21:35:09] <FiFouille> petite récap, ^ début, $ fin, . n'importe quel caractère
[sam jan 27 2007] [21:35:16] <animimotus> ok
[sam jan 27 2007] [21:35:22] <LVEB> ok
[sam jan 27 2007] [21:35:26] <FiFouille> bon, maintenant il y a des 'modificateurs'
[sam jan 27 2007] [21:35:27] <Yumi`> ok
[sam jan 27 2007] [21:35:29] <animimotus> . comme wilcard, et non *
[sam jan 27 2007] [21:35:31] <FiFouille> *, + et ?
[sam jan 27 2007] [21:35:40] Partage clem-vangelis_ a quitté ce canal ("Quitte").
[sam jan 27 2007] [21:35:45] <FiFouille> * c'est 0 ou plus caractères
[sam jan 27 2007] [21:35:47] <FiFouille> + 1 ou plus
[sam jan 27 2007] [21:35:50] <FiFouille> ? 0 ou 1
[sam jan 27 2007] [21:35:54] <FiFouille> exemple
[sam jan 27 2007] [21:36:12] <FiFouille> n'importe quel mot qui commence par 't' et finit par 'tant'
[sam jan 27 2007] [21:36:24] Quitter Matbox a quitté ce serveur ("Quitte").
[sam jan 27 2007] [21:36:26] <FiFouille> grep '^t.*tant$' /tmp/french.utf8
[sam jan 27 2007] [21:36:40] Partage daniel44 a quitté ce canal ("Kopete 0.12.3 : http://kopete.kde.org").
[sam jan 27 2007] [21:36:50] <FiFouille> ^t commence par t tant$ fini par tant et au milieu, 0 ou plusieurs fois n'importe quoi (le . )
[sam jan 27 2007] [21:37:14] <animimotus> (les participes présent, on dit :)
[sam jan 27 2007] [21:37:24] Quitter xorg62 a quitté ce serveur (Read error: 104 (Connection reset by peer)).
[sam jan 27 2007] [21:37:47] <FiFouille> tout le monde qui se taille, trop fort ;)
[sam jan 27 2007] [21:37:48] <LVEB> et d* c'est 0 ou x fois d ?
[sam jan 27 2007] [21:37:55] <FiFouille> LVEB: exactement ;)
[sam jan 27 2007] [21:38:10] <gapz> FiFouille: c'est une question :]
[sam jan 27 2007] [21:38:15] <animimotus> (merki pour cette partie du cours, perso j'adore :)
[sam jan 27 2007] [21:38:31] <LVEB> moi aussi
[sam jan 27 2007] [21:38:37] <animimotus> (j'avais des questions sur sed cette semaine)
[sam jan 27 2007] [21:38:42] <animimotus> (hs)
[sam jan 27 2007] [21:38:51] <gapz> animimotus: tu adores les expressions régulières ? Et encore, il existe encore pas mal de truc ;-)
[sam jan 27 2007] [21:39:02] <gapz> la plupart du temps c'est rébutant en fait
[sam jan 27 2007] [21:39:06] <FiFouille> animimotus: ça vient plus tard justement
[sam jan 27 2007] [21:39:27] <animimotus> gapz: bah pour les plus usuelles, j'aimerais bien les matrîser, oui :) pas forcément les regexp étendues ^^
[sam jan 27 2007] [21:39:30] <FiFouille> donc on récap encore une fois
[sam jan 27 2007] [21:39:39] <FiFouille> ^ $ début fin, . n'importe quoi
[sam jan 27 2007] [21:39:57] <Yumi`> jadore aussi FiFouille :) c'est genial =)
[sam jan 27 2007] [21:39:59] <FiFouille> * {0,n} + {1,n} ? {0,1}
[sam jan 27 2007] [21:40:13] <LVEB> Yumi`: +1
[sam jan 27 2007] [21:40:15] <animimotus> Yumi`: homotextuel, va :p
[sam jan 27 2007] [21:40:23] <Yumi`> lol
[sam jan 27 2007] [21:40:25] <Phlogistique> Mais les PEG saimieu :p
[sam jan 27 2007] [21:40:28] <FiFouille> alors maintenant on peut faire des 'comptages' différents
[sam jan 27 2007] [21:40:29] <LVEB> loooooooool
[sam jan 27 2007] [21:40:30] Joindre xorg62 entre sur le canal (n=martin@Mix-Lille-205-2-4.w193-249.abo.wanadoo.fr).
[sam jan 27 2007] [21:40:39] <Phlogistique> (sauf que il n'y a aucun programme correct pour les utiliser facilement)
[sam jan 27 2007] [21:40:41] <FiFouille> genre 'm{1,2}'
[sam jan 27 2007] [21:40:50] <FiFouille> ça affiche les mots avec une fois m ou bien mm deux fois de suite
[sam jan 27 2007] [21:42:05] <FiFouille> ça marche chez tout le monde ?
[sam jan 27 2007] [21:42:27] <animimotus> yep
[sam jan 27 2007] [21:42:41] <FiFouille> animimotus: m{1,2} ?
[sam jan 27 2007] [21:42:41] <LVEB> non
[sam jan 27 2007] [21:42:45] <FiFouille> LVEB: hhaaaa
[sam jan 27 2007] [21:43:00] <FiFouille> bon alors, là justement on vient de tomber sur une expressions régulière étendue
[sam jan 27 2007] [21:43:08] <FiFouille> donc si vous voulez que ça marche grep -E ou egrep
[sam jan 27 2007] [21:43:13] <FiFouille> c'est justement le piège ;)
[sam jan 27 2007] [21:43:18] <LVEB> c'est bien grep 'm{1,2}' /tmp/french.utf8 ?
[sam jan 27 2007] [21:43:35] <FiFouille> LVEB: essaie avec egrep ou en faisant grep -E ça ira ;)
[sam jan 27 2007] [21:43:43] <animimotus> LVEB: avec -E devant
[sam jan 27 2007] [21:43:59] <Yumi`> c'est quoi -E
[sam jan 27 2007] [21:43:59] <animimotus> bis
[sam jan 27 2007] [21:44:07] <FiFouille> donc justement, faire attention quand on fait des bidules plus ou moins complexe de pas perdre du temps pour une bêtise pareille
[sam jan 27 2007] [21:44:09] <LVEB> pourquoi ca marche ?
[sam jan 27 2007] [21:44:10] <FiFouille> (ça m'arrive souvent)
[sam jan 27 2007] [21:44:14] <animimotus> Yumi`: pour passer en étendu
[sam jan 27 2007] [21:44:21] <LVEB> ah...
[sam jan 27 2007] [21:44:24] <Yumi`> ok
[sam jan 27 2007] [21:44:25] <FiFouille> y'a les expressions régulières de base, et les étendues
[sam jan 27 2007] [21:44:33] <FiFouille> m{1,2} c'est une étendue justement
[sam jan 27 2007] [21:44:38] <animimotus> FiFouille: on peut pas utiliser egrept de manière générique, du coup ?
[sam jan 27 2007] [21:44:41] <FiFouille> donc faut spécifier d'activer le support
[sam jan 27 2007] [21:44:45] <gapz> et en l'occurence grep ne gère pas nativement les étendues
[sam jan 27 2007] [21:44:47] <FiFouille> ben justement
[sam jan 27 2007] [21:44:48] <animimotus> * egrep
[sam jan 27 2007] [21:44:53] <LVEB> on peut les trouver ou ces expresiions ?
[sam jan 27 2007] [21:44:57] <FiFouille> les expressions régulières étendues c'est complexe
[sam jan 27 2007] [21:45:01] <FiFouille> et qui dit complexe dit lent
[sam jan 27 2007] [21:45:19] <animimotus> lent à traiter ?
[sam jan 27 2007] [21:45:23] <FiFouille> donc si on veut faire un script qui gère 10 000 fichiers et qu'on fait juste des regex de base, on veut pas se taper la lenteur des étendues pour autant
[sam jan 27 2007] [21:45:38] <animimotus> ok
[sam jan 27 2007] [21:45:43] <FiFouille> LVEB: je passerai une série de lien une fois fini ;)
[sam jan 27 2007] [21:45:55] <FiFouille> alors, un exemple 'ludique'
[sam jan 27 2007] [21:46:10] <LVEB> merci
[sam jan 27 2007] [21:46:11] <FiFouille> vous savez tous que les noms de domaine en .eu sont sortis il y a qque temps
[sam jan 27 2007] [21:46:26] <FiFouille> on veut se taper un délire et voir les mots français qui ont un sens
[sam jan 27 2007] [21:46:30] <animimotus> deux ans, oui :)
[sam jan 27 2007] [21:46:32] <FiFouille> alors, on fait quoi ?
[sam jan 27 2007] [21:46:39] <FiFouille> grep '^.*eu[xt]$' /tmp/french.utf8
[sam jan 27 2007] [21:46:52] <FiFouille> tout ce qui se termine en eux ou eut
[sam jan 27 2007] [21:47:18] <animimotus> ah pas mal ^^
[sam jan 27 2007] [21:47:23] <FiFouille> http//chatouill.eu ça pête non ? ;)
[sam jan 27 2007] [21:47:28] <animimotus> www.voluptu.eu
[sam jan 27 2007] [21:47:29] <animimotus> ^^
[sam jan 27 2007] [21:47:47] <animimotus> je t'ai vu venir :)
[sam jan 27 2007] [21:47:47] <LVEB> ^^
[sam jan 27 2007] [21:47:49] <FiFouille> bon alors, je suis désolé, mais avec ça boitam.eu ne sera pas listé
[sam jan 27 2007] [21:47:54] <FiFouille> en meme temps, tant pis, il est déjà pris ;)
[sam jan 27 2007] [21:48:05] <LVEB> del.ici.eu
[sam jan 27 2007] [21:48:12] <FiFouille> LVEB: aussi ;)
[sam jan 27 2007] [21:48:30] <FiFouille> bon alors, ça commence par n'importe quoi
[sam jan 27 2007] [21:48:37] <FiFouille> ^.*
[sam jan 27 2007] [21:48:40] <animimotus> (ils sont malins ces geeks ultimes :p)
[sam jan 27 2007] [21:48:42] <FiFouille> et suivi de 'eu'
[sam jan 27 2007] [21:48:54] <FiFouille> oui mais alors que tout le monde se dit, c'est quoi [xt] ?
[sam jan 27 2007] [21:49:04] <FiFouille> ben c'est simple, c'est soit x soit t ;)
[sam jan 27 2007] [21:49:11] Joindre DracarD entre sur le canal (n=j@11.red-62-57-21.user.auna.net).
[sam jan 27 2007] [21:49:20] <FiFouille> un autre exemple idiot mais pour illuster
[sam jan 27 2007] [21:49:36] <FiFouille> vous voulez les jeux pour kde ou gnome (c'est pas infaillible tout de même)
[sam jan 27 2007] [21:49:59] <FiFouille> apt-cache search games | grep '^[gk]'
[sam jan 27 2007] [21:50:07] <FiFouille> ça commence par g ou k
[sam jan 27 2007] [21:50:23] <FiFouille> tout le monde comprend là ?
[sam jan 27 2007] [21:50:50] <animimotus> oui
[sam jan 27 2007] [21:51:04] <LVEB> :) Tu es un prof exeptionnel !
[sam jan 27 2007] [21:51:06] <FiFouille> mon public fond comme neige au soleil, la fête ;)
[sam jan 27 2007] [21:51:24] <FiFouille> LVEB: attends, t'as pas encore vu la fin, tu diras plus ça après :p
[sam jan 27 2007] [21:51:27] <Phlogistique> Bouh
[sam jan 27 2007] [21:51:31] Quitter DracarD a quitté ce serveur (Client Quit).
[sam jan 27 2007] [21:51:32] <LVEB> ^^
[sam jan 27 2007] [21:51:37] <Phlogistique> apt-cache search prend des regexp
[sam jan 27 2007] [21:51:40] <animimotus> LVEB: j'osais pas le dire de peur qu'on se dise que vraiment j'étais qu'un sale lèche-bottes :p