[R] Variable comprenant plusieurs valeurs

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
JohnWayne
Niveau 4
Niveau 4
Messages : 68
Enregistré le : mer. 24 mars 2010 17:48
Status : Hors ligne

[R] Variable comprenant plusieurs valeurs

#1

Message par JohnWayne »

Bonsoir,

Es ce que quelqu'un pourrait me traduire ceci en autoIT et évidemment si cela est possible.

for %%0 in ( TOTO TATA COUCOU ) do if exist "%systemdrive%\%%0*.txt" echo %%0*.txt trouvé !>>%SYSTEMDRIVE%\Supress'tools.txt

Merci de l'aide que vous pourrez m'apporter.

JW
Modifié en dernier par JohnWayne le jeu. 15 avr. 2010 14:01, modifié 1 fois.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11824
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [...] Variable comprenant plusieurs valeurs

#2

Message par Tlem »

Voilà :

Code : Tout sélectionner

Global $aFile[3] = ["TOTO", "TATA", "COUCOU"]
For $i = 0 to UBound($aFile) - 1
    If FileExists(@SystemDir & "\" & $aFile[$i] & ".txt") Then
        FileWriteLine(@SystemDir & "\Supress'tools.txt", $aFile[$i] & ".txt trouvé")
    EndIf
Next
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
JohnWayne
Niveau 4
Niveau 4
Messages : 68
Enregistré le : mer. 24 mars 2010 17:48
Status : Hors ligne

Re: [...] Variable comprenant plusieurs valeurs

#3

Message par JohnWayne »

Hé ben ! Je te remercie pour ton aide qui m'est très précieuse ! :D
J'ai encore une question :

Si je veux faire pareil mais disons qu'il faut supprimer ces fichiers donc :

=> Il faudrait par exemple que le script supprime TOTO, TATA et COUCOU si ils existent en une seul fois et marquer dans le rapport
TOTO.txt supprimé
TATA.txt supprimé
COUCOUT.txt supprimé !

Je propose ceci mais qui doit être faux :

Code : Tout sélectionner

Global $aFile[3] = ["TOTO", "TATA", "COUCOU"]
For $i = 0 to UBound($aFile) - 1
    If FileExists(@SystemDir & "\" & $aFile[$i] & ".txt") Then
      Filedelete(@SystemDir & "\" & $aFile[$i] & ".txt" ) And  
FileWriteLine(@SystemDir & "\Supress'tools.txt", $aFile[$i] & ".txt supprimé")
    EndIf
Next

Voilà,

JW
GMib
Niveau 4
Niveau 4
Messages : 57
Enregistré le : sam. 23 janv. 2010 12:39
Status : Hors ligne

Re: [...] Variable comprenant plusieurs valeurs

#4

Message par GMib »

Apprend a te servir du log de scite, il te donne l'erreur et l'endroit exact de l'erreur. (ici le And qui na rien a faire après Then)
JohnWayne
Niveau 4
Niveau 4
Messages : 68
Enregistré le : mer. 24 mars 2010 17:48
Status : Hors ligne

Re: [...] Variable comprenant plusieurs valeurs

#5

Message par JohnWayne »

Dac'

Par contre j'ai beau chercher mais je ne sais pas comment on fait pour qu'il trouve plusieurs dossiers dans C:\ par exemple. J'ai essayé plusieurs choses telles que :

Code : Tout sélectionner

Global $aFile[1] = ["Qoobox\" ]
For $i = 0 to UBound($aFile) - 1
    If FileExists(@SystemDir & "\ Dir " & $aFile[$i] & "\") Then
        FileWriteLine(@SystemDir & "\report.txt", $aFile[$i] & "\ trouvé")
    EndIf
Next
Mais cela ne trouve rien. Je me suis inspiré de l'aide et de ceci :

Code : Tout sélectionner

If FileExists("C:\") Then
    MsgBox(4096, "C:\ Dir ", "Exists")
Else
    MsgBox(4096,"C:\ Dir" , "Does NOT exists")
EndIf
Mais je n'arrive pas à l'intégrer :(
GMib
Niveau 4
Niveau 4
Messages : 57
Enregistré le : sam. 23 janv. 2010 12:39
Status : Hors ligne

Re: [...] Variable comprenant plusieurs valeurs

#6

Message par GMib »

Tu as a mon avis confondu le FileExists avec le MsgBox (Dir en trop)

Pour resoudre ce genre de probleme je fait ceci :

Code : Tout sélectionner

Global $aFile[1] = ["Qoobox\" ]
For $i = 0 to UBound($aFile) - 1
    consolewrite(@SystemDir & "\ Dir " & $aFile[$i] & "\")
    If FileExists(@SystemDir & "\ Dir " & $aFile[$i] & "\") Then
        FileWriteLine(@SystemDir & "\report.txt", $aFile[$i] & "\ trouvé")
    EndIf
Next
 
JohnWayne
Niveau 4
Niveau 4
Messages : 68
Enregistré le : mer. 24 mars 2010 17:48
Status : Hors ligne

Re: [...] Variable comprenant plusieurs valeurs

#7

Message par JohnWayne »

Cela ne marche toujours pas :|
GMib
Niveau 4
Niveau 4
Messages : 57
Enregistré le : sam. 23 janv. 2010 12:39
Status : Hors ligne

Re: [...] Variable comprenant plusieurs valeurs

#8

Message par GMib »

et que dit le log de scite ? a tu compris a quoi sert le consolewrite ?
mon code n'est pas sensé marcher, il est sensé t'apprendre a trouver les erreurs toi meme ;)
JohnWayne
Niveau 4
Niveau 4
Messages : 68
Enregistré le : mer. 24 mars 2010 17:48
Status : Hors ligne

Re: [...] Variable comprenant plusieurs valeurs

#9

Message par JohnWayne »

Salut

Merci de m'aider Gmid. Pour consolewrite j'ai pas vraiment trouvé à quoi cela sert. Dans l'aide ils disent Writes data to the STDOUT stream. Some text editors can read this stream as can other programs which may be expecting data on this stream.


Je suppose que cela écrit dans un fichier ou autre :?:

Dur dur quand on vient du batch :lol:
GMib
Niveau 4
Niveau 4
Messages : 57
Enregistré le : sam. 23 janv. 2010 12:39
Status : Hors ligne

Re: [...] Variable comprenant plusieurs valeurs

#10

Message par GMib »

Ca ecrit dans le log de scite, celui que je te dit de regarder depuis le debut ;) quand tu fait F5 ou Tools -> GO du menu de scite les erreurs et autres warnings sont affiché en bas de scite.

tu peu ossi remplacer consolewrite par msgbox si tu prefere : msgbox("","",@SystemDir & "\ Dir " & $aFile[$i] & "\")

edit : pour etre encore plus clair :

Code : Tout sélectionner

Global $aFile[1] = ["Qoobox\" ]
For $i = 0 to UBound($aFile) - 1
    consolewrite("Chaine envoyé a FileExists :"&@CRLF)
    ConsoleWrite(@SystemDir & "\ Dir " & $aFile[$i] & "\"&@CRLF)
    If FileExists(@SystemDir & "\ Dir " & $aFile[$i] & "\") Then
        FileWriteLine(@SystemDir & "\report.txt", $aFile[$i] & "\ trouvé")
    EndIf
Next
Presse Papier-1.jpg
donc a moins d'avoir un répertoire nommé " Dir Qoobox\" ta fonction FileExists ne peut pas marcher.
JohnWayne
Niveau 4
Niveau 4
Messages : 68
Enregistré le : mer. 24 mars 2010 17:48
Status : Hors ligne

Re: [...] Variable comprenant plusieurs valeurs

#11

Message par JohnWayne »

Daccord, je commence à comprendre.

Avec ce code :

Code : Tout sélectionner

Global $aFile[1] = ["Qoobox\" ]
For $i = 0 to UBound($aFile) - 1
   ConsoleWrite(@HomeDrive & "" & $aFile[$i] & "\"&@CRLF)
    If FileExists(@HomeDrive & "" & $aFile[$i] & "\") Then
        msgbox("","",@HomeDrive & "\ Qoobox\ found !" & $aFile[$i] & "\")
           FileWriteLine(@HomeDrive & "\report.txt", $aFile[$i] & "\ trouvé")
    EndIf
    Next
 
=> Il indique si oui ou non C:\Qoobox\ existe ?

Je suis désolé d'être long à la détente, c'est comme ca quand on aide un bleu :lol:
GMib
Niveau 4
Niveau 4
Messages : 57
Enregistré le : sam. 23 janv. 2010 12:39
Status : Hors ligne

Re: [...] Variable comprenant plusieurs valeurs

#12

Message par GMib »

Regarde bien le log, y a un \ en trop a la fin.

Peu tu expliquer ce que tu cherche a faire au juste ? le repertoire Qoobox est t'il toujours dans le C ? cherche tu uniquement a verifier sa presence ?
JohnWayne
Niveau 4
Niveau 4
Messages : 68
Enregistré le : mer. 24 mars 2010 17:48
Status : Hors ligne

Re: [...] Variable comprenant plusieurs valeurs

#13

Message par JohnWayne »

Salut !

-> Le répertoire Qoobox est cré si un outil de désinfection est exécute. Je voudrais qu'il chercher si C:\Qoobox est présent et si oui qu'il indique dans un rapport

C:\Qoobox trouvé !

Merci,

A+
GMib
Niveau 4
Niveau 4
Messages : 57
Enregistré le : sam. 23 janv. 2010 12:39
Status : Hors ligne

Re: [..] Variable comprenant plusieurs valeurs

#14

Message par GMib »

Code : Tout sélectionner

If FileExists("C:\Qoobox\") Then
    msgbox("","Info","Qoobox trouvé")
    FileWriteLine("C:\report.txt", "Qoobox trouvé")
EndIf
faut pas chercher midi a 14h ;)
tu peu supprimer la ligne du msgbox si elle te gene.
JohnWayne
Niveau 4
Niveau 4
Messages : 68
Enregistré le : mer. 24 mars 2010 17:48
Status : Hors ligne

Re: [..] Variable comprenant plusieurs valeurs

#15

Message par JohnWayne »

:D :D :D Merci encore !
Répondre