IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

script random sur fichier


Sujet :

Linux

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 9
    Points
    9
    Par défaut script random sur fichier
    Bonjour à tous
    je suis nouveau dans le monde de linux et encore plus dans la programmation
    Le but:
    Je souhaiterais modifier l'ordre des maps et ajouter les nouvelles de manière automatique dans mon jeux Counter-Strike Condition Zero.

    Pour cela, tout se passe dans un fichier mapcycle.txt
    Ce fichier est rempli du nom des maps mais sans leur extension bsp.
    Le fichier est composé de ma manière suivante.

    de_dust
    de_prodigy
    de_dust2
    de_nuke

    Je souhaiterais donc faire un script lancé de n'importe ou (par exemple /home)

    il prendrait tous les fichiers ayant l'extension bsp dans le répertoire indiqué : .../cstrike/maps.
    Ensuite avec une fonction de type "random" rangerais les maps (mais sans leur extension bsp) dans le fichier mapcycle.
    Le fichier mapcyle serait donc à chaque lancement de ce script toujours différent au niveau de l'ordre des maps.

    De plus je souhaiterais que le script lance ensuite l'application par une ligne de commande qui serait
    de type :

    cd /usr/serveurs/serveur1/

    ./srcds_run -console -game czero -port 27015 +map XXXXX +maxplayers 16 -tickrate 100

    La map lancée ici XXXXX serait la dernière du map cycle (pour ne pas la jouer 2 fois)

    Comment faire ca ????


    Merci d'avance

  2. #2
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 728
    Points : 31 050
    Points
    31 050
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par ricco75 Voir le message
    Bonjour à tous
    je suis nouveau dans le monde de linux et encore plus dans la programmation
    Le but:
    Je souhaiterais modifier l'ordre des maps et ajouter les nouvelles de manière automatique dans mon jeux Counter-Strike Condition Zero.

    Pour cela, tout se passe dans un fichier mapcycle.txt
    Ce fichier est rempli du nom des maps mais sans leur extension bsp.
    Le fichier est composé de ma manière suivante.

    de_dust
    de_prodigy
    de_dust2
    de_nuke

    Je souhaiterais donc faire un script lancé de n'importe ou (par exemple /home)

    il prendrait tous les fichiers ayant l'extension bsp dans le répertoire indiqué : .../cstrike/maps.
    Ensuite avec une fonction de type "random" rangerais les maps (mais sans leur extension bsp) dans le fichier mapcycle.
    Le fichier mapcyle serait donc à chaque lancement de ce script toujours différent au niveau de l'ordre des maps.
    Comment faire ca ????
    Te faut apprendre à programmer car c'est déjà un petit truc qui n'est pas à la portée du néophyte. Mais surtout te faut choisir un langage.
    - Le shell: simple à appréhender mais c'est plus un langage pour manipuler le système. Il manquera pas mal d'outils (dont la gestion du random)
    - Le C: puissant et rapide mais faut tout faire depuis le plus bas niveau (réservation mémoire pour stocker le nom de la map, etc)
    - Python: Souple et puissant qui répond bien à ton problème
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    #!/usr/bin/env python
    # coding: Latin-1 -*-
     
    import os
    import random
     
    # Création de la liste
    liste=[]
    for file in os.listdir(".../cstrike/maps"): liste.append(file)
     
    # Mélange
    random.shuffle(liste)
     
    # Enregistrement de la liste
    fp=open("mapcycle.txt", "w")
    for file in liste: fp.write("%s\n" % file)
    fp.close()
    Tu enregistres ce code dans un fichier "toto.py", tu lui mets le droit "x" puis il ne te reste plus qu'à lancer "./toto.py" chaque fois que tu voudras avoir un nouveau mapcycle.

    J'aurais pu aussi utiliser des langages équivalents à Python comme Ruby ou Perl mais je ne les connais pas. Ptet que d'autres forumeurs te sortiront une version en Ruby ou Perl...

    Citation Envoyé par ricco75 Voir le message
    De plus je souhaiterais que le script lance ensuite l'application par une ligne de commande qui serait
    de type :
    cd /usr/serveurs/serveur1/

    ./srcds_run -console -game czero -port 27015 +map XXXXX +maxplayers 16 -tickrate 100

    La map lancée ici XXXXX serait la dernière du map cycle (pour ne pas la jouer 2 fois)
    Là c'est plus un truc à faire en shell
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    #!/bin/bash
    map=`head -1 mapcycle.txt`
     
    cd /usr/serveurs/serveur1/
     
    ./srcds_run -console -game czero -port 27015 +map "$map"  +maxplayers 16 -tickrate 100
    Tu enregistres ce code dans un fichier "toto.sh", tu lui mets aussi le droit "x" puis t'as plus qu'à taper "./toto.sh" pour qu'il lance ton serveur CS.

    Voilà. Mais apprend quand-même ces deux langages que sont le shell et Python car 1) c'est bien pratique quand on bosse sur Unix/Linux de pouvoir se créer un outil rapide quand il faut (j'ai mis 3mn à taper ces scripts après avoir lu ta question) et 2) on va pas te taper tout tes programmes (là je l'ai fait "exceptionnellement" pour te montrer la facilité de ces outils mais c'est tout)
    Tu trouveras un cours de shell Linux ici: http://linux.developpez.com/cours/
    Tu trouveras des tuto Python ici: http://python.developpez.com/cours/

    Bon frag.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 9
    Points
    9
    Par défaut Merci à toi
    oula c du rapide !!
    merci à toi pour ta gentillesse!
    ca fait plaisir de voir qu'il y a des gens sympas.

    Je crois qu'il y a pas mal de boulot en prévison !!
    Je vais aller faire un tour sur les sites que tu m'as indiqués.

    Encore merci

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 9
    Points
    9
    Par défaut oups
    Salut
    je viens de tester le script

    ca marche presque sauf que je voudrais juste récuper les fichier bsp du répertoire maps

    une fonction de type

    for file in os.listdir(".../cstrike/maps/*.bsp"): liste.append(file)

    mais ca ne marche pas

    je cherche mais ca m'a l'air drolement puissant Python

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    271
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 271
    Points : 329
    Points
    329
    Par défaut
    En utilisant une liste compréhensive (list comprehension) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    import os
    liste = [ x for x in os.listdir('.../cstrike/maps/*.bsp') if os.path.splitext(x)[1] == ".bsp" ]

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 9
    Points
    9
    Par défaut
    J'ai modifié le script initial de la sorte :
    mais ca ne fonctionne pas ?



    #!/usr/bin/env python
    # coding: Latin-1 -*-

    import os
    import random

    # Création de la liste
    #liste=[]
    liste = [ x for x in os.listdir('.../cstrike/maps/*.bsp') if os.path.splitext(x)[1] == ".bsp" ]
    for file in os.listdir(".../cstrike/maps"): liste.append(file)


    # Mélange
    random.shuffle(liste)

    # Enregistrement de la liste
    fp=open("mapcycle.txt", "w")
    for file in liste: fp.write("%s\n" % file)
    fp.close()

  7. #7
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 728
    Points : 31 050
    Points
    31 050
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par ricco75 Voir le message
    Salut
    je viens de tester le script

    ca marche presque sauf que je voudrais juste récuper les fichier bsp du répertoire maps

    une fonction de type

    for file in os.listdir(".../cstrike/maps/*.bsp"): liste.append(file)

    mais ca ne marche pas
    La fonction "listdir()" ne prend pas en compte les métacaractères. Dans ta description tel que je l'ai comprise, le répertoire n'était sensé contenir que du bsp !!!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    # Création de la liste
    liste=[]
    for file in os.listdir(".../cstrike/maps"):
    	if file.split(".")[-1] == "bsp": liste.append(file)
    Et fais gaffe, l'espace devant le "if" est une tabulation (hyper important en Python)

    Citation Envoyé par ricco75 Voir le message
    je cherche mais ca m'a l'air drolement puissant Python
    T'as pas idée à quel point...

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 9
    Points
    9
    Par défaut yesssss
    Yesssssss
    nickel chrome de chez nickel chrome !!

    Juste 2 questions (je ne t'embête plus après):

    comment executer par le script python le fichier .sh de lancement ?

    Le python peut-il se lancer d'une page web

    Merci d'avance

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    271
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 271
    Points : 329
    Points
    329
    Par défaut
    Oups désolé pour le wildcard ...

    J'ai copié bêtement le path que tu donnais

    En corrigeant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    import os
    liste = [ x for x in os.listdir('.../cstrike/maps/') if os.path.splitext(x)[1] == ".bsp" ]

  10. #10
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 728
    Points : 31 050
    Points
    31 050
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par ricco75 Voir le message
    comment executer par le script python le fichier .sh de lancement ?
    Ben un shell c'est juste une encapsulation d'ordres shells. Et un ordre shell c'est "exécuter tel programme" ou bien "exécuter tel script".
    Donc te suffit de recopier la commande de lancement du script Python dans le script shell
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    #!/bin/bash
    ./toto.py                   # Lancement du script Python
    map=`head -1 mapcycle.txt`
     
    cd /usr/serveurs/serveur1/
     
    ./srcds_run -console -game czero -port 27015 +map "$map"  +maxplayers 16 -tickrate 100
    Citation Envoyé par ricco75 Voir le message
    Le python peut-il se lancer d'une page web
    Uniquement depuis une page php (un autre langage à apprendre). D'ailleurs la page php aurait pu aussi prendre à son niveau la création du mapcycle. Mais évidemment comme tu fournis ton cahier des charges au compte gouttes...

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 9
    Points
    9
    Par défaut oups
    Salut,

    Excuse moi, c'est vrai que je donne les infos au fur et à mesure

    C'est bête je n'ai pas pensé par le fichier bash d'abord lancer le fichier .py et ensuite la ligne de démarrage. (on se complique la vie des fois)

    La fonction principale et le but comme je le voyais est atteint grace à toi

    Maintenant dans ton message tu dis que l'on peut faire aussi cette fonction en php ?

    Je ne veux pas t'embeter trop longtemps avec ca mais je serais curieux de la voir.

    Pour revenir à Python apparement c'est aussi le langage utilisé chez Matie (base des scripts additionnels pour Counter Strike Source)

    http://www.eventscripts.com/pages/EventScripts


    Merci à toi

  12. #12
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 728
    Points : 31 050
    Points
    31 050
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par ricco75 Voir le message
    Maintenant dans ton message tu dis que l'on peut faire aussi cette fonction en php ?

    Je ne veux pas t'embeter trop longtemps avec ca mais je serais curieux de la voir.
    Ben j'aime moins le php alors j'ai moins l'habitude mais ça devrait être un truc de ce style

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    <script language="php">
     
    // Création de la liste
    $liste=array();
    $i=0;
    $d=opendir(".../cstrike/maps");
    while (($file = readdir($d)) !== false)
    {
        $elem=explode($file, ".")
        if (strcmp($elem[-1], "bsp") == 0)
        {
            strcpy($liste[$i], $file);
            $i++;
        }
    }
     
    //Mélange
    shuffle($liste);
     
    // Enregistrement de la liste
    $fp=fopen("mapcycle.txt", "w");
    foreach ($liste as $file);
        fwrite($fp, $file);
    fclose($fp);
    </script>

  13. #13
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 9
    Points
    9
    Par défaut Merci à toi !!
    Merci à toi !

    Avantage peut-être en PHP c'est que j'aurais le script qui fonctionnera à la fois sous Windows et Linux .

    Encore Merci !!!

    PS : dernière petite chose le pc que j'utilise pour naviguer est sous Windows. Quand je fais des copier coller des scripts et que je le mets dans la machine Linux ca marche pas. Windows doit mettre des caractère sup non ?

    Quels soft utiliser pour faire mes copier coller correctement ?
    (du coup je les recopie dans la machine en attendant)

  14. #14
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 728
    Points : 31 050
    Points
    31 050
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par ricco75 Voir le message
    Avantage peut-être en PHP c'est que j'aurais le script qui fonctionnera à la fois sous Windows et Linux .
    En fait, un script php est exécuté par un serveur Apache. Donc si t'es sous Linux tu peux installer directement le serveur, si t'es sous zindow faut que t'installes Xamp qui est un mini (mais complet) serveur Apache. Mais tu peux aussi installer Python pour Windows http://www.python.org/ftp/python/2.5.1/python-2.5.1.msi

    Citation Envoyé par ricco75 Voir le message
    PS : dernière petite chose le pc que j'utilise pour naviguer est sous Windows. Quand je fais des copier coller des scripts et que je le mets dans la machine Linux ca marche pas. Windows doit mettre des caractère sup non ?
    Non. Le copier/coller est "normallement" transparent. Cependant les scripts déposés sur ce fofo que tu as téléchargé, eux, sont écrit sous windows et effectivement chaque ligne se termine par CTRL-J+CTRL-M. Mais tu peux les passer par la moulinette "dos2unix" (en standard sur Linux) et ça les transforme en scripts Linux.

  15. #15
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 9
    Points
    9
    Par défaut oups
    Salut Sve@r
    Ce matin j'ai voulu tester le script sur la machine du jeu.
    J'ai un petit soucis.
    Je n'ai pas fait attention, par rapport au fichier mapcycle. (je m'étais focalisé sur le problème précèdent)

    Le tri se fait bien maintenant :C'est bien que les fichiers bsp qui figurent dans le mapcycle.txt.
    Seul petit soucis leur extension y apparaissent et pour que le jeu tourne il faut les maps sans leur extensions:

    par exemple
    de_dust2.bsp ======> de_dust2
    de_prodigy.bsp ======> de_prodigy

    petit plus (si possible ?)
    est ce possible de faire un tri avec le nom des cartes commencant fy_, gg_
    ou une * pour toutes les cartes bsp du répertoire maps ?
    et après je ne t'embête plus promis

  16. #16
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 728
    Points : 31 050
    Points
    31 050
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par ricco75 Voir le message
    Salut Sve@r
    Ce matin j'ai voulu tester le script sur la machine du jeu.
    J'ai un petit soucis.
    Je n'ai pas fait attention, par rapport au fichier mapcycle. (je m'étais focalisé sur le problème précèdent)

    Le tri se fait bien maintenant :C'est bien que les fichiers bsp qui figurent dans le mapcycle.txt.
    Seul petit soucis leur extension y apparaissent et pour que le jeu tourne il faut les maps sans leur extensions:

    par exemple
    de_dust2.bsp ======> de_dust2
    de_prodigy.bsp ======> de_prodigy
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    # Création de la liste
    liste=[]
    for file in os.listdir(".../cstrike/maps"):
    	if file.split(".")[-1] == "bsp": liste.append(file.replace(".bsp", ""))
    Citation Envoyé par ricco75 Voir le message
    petit plus (si possible ?)
    est ce possible de faire un tri avec le nom des cartes commencant fy_, gg_
    ou une * pour toutes les cartes bsp du répertoire maps ?
    et après je ne t'embête plus promis
    Euh pfff oui mais faut quasiment tout réécrire...

  17. #17
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 9
    Points
    9
    Par défaut ah ?
    Salut
    Plutot que de retravailler le script juste un petit bout de programme qui trie les maps selon le filtre et qui les ecrit dans le mapcycle.txt

    Je lancererais par exemple par le fichier sh.

    - script de filtre

    - script random

    - lancement du jeu ?

  18. #18
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 728
    Points : 31 050
    Points
    31 050
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par ricco75 Voir le message
    Salut
    Plutot que de retravailler le script juste un petit bout de programme qui trie les maps selon le filtre et qui les ecrit dans le mapcycle.txt

    Je lancererais par exemple par le fichier sh.

    - script de filtre

    - script random

    - lancement du jeu ?
    Pas possible. Mon script les prend dans le répertoire et les écrit dans le mapcycle. Il ne les prend pas dans le mapcycle pour les reécrire
    A la limite, tu peux faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    script random => écriture mapcycle
    grep "gg_" mapcycle.txt >/tmp/a && mv /tmp/a mapcycle.txt
    Et apprends à programmer !!!

Discussions similaires

  1. Script Shell sur des fichiers et chaînes
    Par chris_wafer dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 29/01/2008, 21h45
  2. erreur sur fichier script a.s
    Par flashdams dans le forum Flash
    Réponses: 1
    Dernier message: 03/01/2008, 15h52
  3. Appliquer un script perl sur un fichier uploadé
    Par Oli_Ifre dans le forum Langage
    Réponses: 4
    Dernier message: 04/04/2007, 11h14
  4. Script gestion évenement sur fichier.
    Par beloc dans le forum Linux
    Réponses: 4
    Dernier message: 02/06/2006, 13h57
  5. script autorisation sur fichier
    Par oasis_5 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 13/03/2006, 16h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo