/write

Résolu
Utilisateur anonyme - 8 janv. 2005 à 14:30
fjxokt Messages postés 840 Date d'inscription vendredi 28 janvier 2005 Statut Membre Dernière intervention 25 février 2009 - 23 juin 2005 à 20:19
Bonjour, j'ai un petit problème. Voila je voudrais que cette partie de
script cherche dans le fichier.txt si une ligne commence par un mot
entré en $2 et que s'il en trouve une il réécrive par dessus une autre
ligne ( $2 et $3 ) et s'il n'en trouve pas il écrive une ligne à la fin
du fichier.txt

Voila ce que j'ai fait :



$iif($read(fichier.txt,w,$2 $+ *),write -ls $+ $2 fichier.txt $2 $3,write fichier.txt $2 $3)



Merci d'avance :)

10 réponses

cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 5
8 janv. 2005 à 16:32
$iif($read(fichier.txt,w,$2 $+ *),write -l $+ $readn fichier.txt $2 $3,write fichier.txt $2 $3)

essaie j'ai pas testé...

PaDa
3
cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 5
8 janv. 2005 à 15:14
je comprends pas ce que tu veux.

si il trouve une ligne commencant par $2 il doit écrire ou exactement ??

PaDa
0
TooLoW Messages postés 169 Date d'inscription jeudi 6 mai 2004 Statut Membre Dernière intervention 26 mai 2005
8 janv. 2005 à 15:26
je pense que tu devrai utiliser :


L'option -a indique que mIRC devrait ajouter le texte à la fin de la ligne spécifié dans le fichier.


sinon je ne sait pas trop j'utilise pas vraiment la commande write dsl :s

bonne continuation

mopi ;)
0
Utilisateur anonyme
8 janv. 2005 à 16:08
J'avoue que j'ai mal expliqué. En fait je voudrais que s'il trouve la
ligne qui commence par $2 il l'éfface et il écrive à sa place, $2 et $3
( Même si il commençait déja par $2 )

Donc en gros faire ça en une seule commande ( Pour que ça tienne dans un $iif ) :



write -ds $+ $2 fichier.txt

write fichier.txt $2 $3



Et peu importe où il écrit la nouvelle ligne.

Merci pour vos réponses :)
0

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

Posez votre question
Utilisateur anonyme
8 janv. 2005 à 17:16
Ah ouais merci PaDa niquel, je n'avais pas pensé à $readn

Merci :)
0
Utilisateur anonyme
8 janv. 2005 à 17:19
Super PaDa toujours là :)

Autremment tu ne saurais pas si on pouvait le faire en une seule commande avec /write ?
0
cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 5
8 janv. 2005 à 17:27
Je ne pense pas en fait :o)

pi bon les codes raccourcis a fond, dis toi que c'est moins lisible
après. si t'as un truc qui marche en deux coups, et que tu vois pas de
méthode en un coup, te creuse pas trop :p sauf si c'est un défi
smallest :)

PaDa
0
Utilisateur anonyme
8 janv. 2005 à 17:44
Ouais ok :)

Je pensais à ça, parce que ça pourrait servir plus tard

Enfin bon merci :)
0
FlaViMaN Messages postés 8 Date d'inscription samedi 5 février 2005 Statut Membre Dernière intervention 27 janvier 2007
23 juin 2005 à 20:00
Salut, j voudrai faire 1 truc du genre, mais avec une ptite diference:
j voudrai k kan kelk1 fai une comande, ca efface toutes les lignes du fichier.txt avec le nom du chan dessus.

Exemple dans le fichier .txt
blabla #monsalon
clapclap #salon2

Si la commande est faite sur #monsalon ca efface ttes les lignes contenan #monsalon

merci d'avance :)
0
fjxokt Messages postés 840 Date d'inscription vendredi 28 janvier 2005 Statut Membre Dernière intervention 25 février 2009 1
23 juin 2005 à 20:19
alias rem { var %i 1, %j $lines(fichier.txt) { while (%i <= %j) { write -dw*#tonchan* fichier.txt | inc %i } } }
0
Rejoignez-nous