Variable dans fichier text

Moya22 Messages postés 5 Date d'inscription jeudi 8 mai 2003 Statut Membre Dernière intervention 5 décembre 2014 - 25 oct. 2009 à 11:45
WorldDMT Messages postés 871 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2012 - 9 janv. 2010 à 18:05
Bonjour
je voudrais savoir comment interpreter une variable qui se rouve dans un fichier txt.
en fait, je lit des lignes aleaoire dans un fichier txt, dans les phrase j'ai mis par ex : Salut $nick !
mais en sorti je vois $nick et pas le pseudo de la personne.
comment faire ?

7 réponses

cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
25 oct. 2009 à 19:57
$read évalue par defaut le contenu du fichier donc ça devrait pas être problématique.
Peux tu montrer ton code ?

voici un petit exemple avec une variable :
alias ex_var {
write -c plop.txt salut % $+ plop 
var %plop kikoo 42 
echo -a $read(plop.txt,1)
.remove plop.txt
}
0
WorldDMT Messages postés 871 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2012 1
26 oct. 2009 à 00:39
salut
si c'est pas evalué essaye d'utiliser $($read(fichier.txt),2)
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
26 oct. 2009 à 00:44
Non, évalué soi même encore une fois le texte est juste une très mauvaise idée, ce n'est pas sécurisé parce que tu ne peux prévoir ce que contient le fichier.
Tout contenu non controllé ne doit jamais être évalué deux fois
0
WorldDMT Messages postés 871 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2012 1
26 oct. 2009 à 01:01
le fichier l'appartien alors lui meme il sait que contien ce fichier

"je lit des lignes aleaoire dans un fichier txt, dans les phrase j'ai mis par ex : Salut $nick !"

donc c'est un bienvenue comme salut $nick , $nick bienvenu sur # bla bla ...

selon lui son prob c'est qu'il voit $nick au lieu du pseudo donc il n'y a pas d'evaluation sur un identifieur ou autre c'est pourquoi j'ai donné cet exp.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
26 oct. 2009 à 01:15
"le fichier l'appartien alors lui meme il sait que contien ce fichier"

C'est p-e vrai dans ce cas ci, mais je dis ça par prévention : un fichier, même si c'est sur sa machine, il se peut très bien que ce soit un fichier d'un bot ou le contenu du fichier est rempli par des users, si l'user rempli avec un $findfile() et que tu évalue deux fois, t'aura l'air malin si il contient un remove ;)

Tu me diras "oui mais de toute façon le findfile sera évalué puisque $read évalue", et jte dirais oui, mais là c'est a cause du fonctionnement interne de $read, on peut pas prévenir ça si on veut évalué le contenu du fichier et c'est a l'auteur du code de faire en sorte que il n'y ai pas de faille comme $findfile etc.
Le fait de rajouter $eval rajoute juste "une couche de faille en plus".
0
Moya22 Messages postés 5 Date d'inscription jeudi 8 mai 2003 Statut Membre Dernière intervention 5 décembre 2014
26 oct. 2009 à 16:50
alors :p

J'avais dejas poster quelue chose l'année derniere ...
la reponse est toute simple :

set fichier [open bonjour.txt r]
set phrase [split [read $fichier] "\n"]
putserv "PRIVMSG $chan :[subst -nocommands [lindex $phrase [rand [llength $phrase]]]]"
close $fichier

je rappel que c'est du tcl hein :)

Merci pour vos reponses
0
WorldDMT Messages postés 871 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2012 1
9 janv. 2010 à 18:05
t'avais jamais dis que c'etait du tcl
0
Rejoignez-nous