[R] Rechercher un fichier, puis le copier

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Kevzi
Niveau 4
Niveau 4
Messages : 78
Enregistré le : dim. 17 juil. 2011 12:36
Status : Hors ligne

[R] Rechercher un fichier, puis le copier

#1

Message par Kevzi »

Bonjour,

Etant dans une sérieuse impasse, je demande de l'aide aux personne plus expérimenté que moi. Je souhaiterais faire un petit script qui puisse me faire ça comme je vais l'expliquer:

Code : Tout sélectionner

On recherche dans le dossier "x" le fichier "y". si le fichier "y" existe, alors on le copie.
Je pensais que c’était simple de faire ça , mais franchement, je sèche.
Si quelqu'un à une idée... sa serait sympa de la partager :)

Merci d'avance pour vos réponses.
Modifié en dernier par Kevzi le lun. 31 oct. 2011 13:17, modifié 1 fois.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11830
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Rechercher un fichier, puis le copier

#2

Message par Tlem »

:shock:
C'est pourtant quelque chose de plutôt basique a moins de souhaiter faire une recherche récursive (sous dossier).

Si votre recherche est simple, alors utilisez FileExist() pour savoir si le fichier existe puis FileCopy() pour le copier ailleurs ...
C'est quelque chose qui a été vu à plusieurs reprises. Donc le moteur de recherche du forum n’a pas été utilisé ou a été mal utilisé !!! :roll:
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é".
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Rechercher un fichier, puis le copier

#3

Message par mikell »

:shock:

Code : Tout sélectionner

$file = dossier_x\fichier_y
If FileExists($file) Then FileCopy($file, @desktopdir & "\fichier_y")
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Rechercher un fichier, puis le copier

#4

Message par mikell »

:mrgreen: la simultanéité existe, je l'ai rencontrée
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Kevzi
Niveau 4
Niveau 4
Messages : 78
Enregistré le : dim. 17 juil. 2011 12:36
Status : Hors ligne

Re: [..] Rechercher un fichier, puis le copier

#5

Message par Kevzi »

Ce que j'ai oublié de dire, ce que les dossiers sont différents dans chaque pc.
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Rechercher un fichier, puis le copier

#6

Message par mikell »

Alors il faut faire une recherche récursive du type
dossier_constant_sur_chaque_pc\dossier_variable\fichier

Code : Tout sélectionner

$sRoot = "dossier constant"

$FileList = _FileListToArray($sRoot, '*', 2)
If Not @error Then
    For $i = 1 To $FileList[0]   ; cherche dans le dossier variable
        If FileExists($FileList[$i] & "\mon fichier") Then FileCopy($FileList[$i] & "\mon fichier", @desktopdir & "\monfichier")
    Next
EndIf
 
ou avec RecFileListToArray, puis traiter les éléments de l'array obtenue
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Kevzi
Niveau 4
Niveau 4
Messages : 78
Enregistré le : dim. 17 juil. 2011 12:36
Status : Hors ligne

Re: [..] Rechercher un fichier, puis le copier

#7

Message par Kevzi »

J'ai pas trop compris ton exemple. je dois mettre ou le lien où se situe le dossier , ou il y a le fichier ?
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Rechercher un fichier, puis le copier

#8

Message par mikell »

Ben, tu me dis que que le dossier "x" où se trouve le fichier_y est différent dans chaque pc
Il faut donc trouver le dossier situé en amont de ce dossier "x" et qui sera commun à tous ces pc, et faire partir la recherche de là, exemple :
sur pc 1 : Mes Documents\dossier "x"_tagada\fichier_y
sur pc 2 : Mes Documents\dossier "x"_tsointsoin\fichier_y
Donc faut lancer la recherche récursive à partir de Mes Documents (dossier racine commun aux 2 pc)
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Kevzi
Niveau 4
Niveau 4
Messages : 78
Enregistré le : dim. 17 juil. 2011 12:36
Status : Hors ligne

Re: [..] Rechercher un fichier, puis le copier

#9

Message par Kevzi »

J'ai compris ton exemple, mais sa ne marche pas. je pense que c'est à cause du nombre de dossier il y a un macro "@AppDataDir" plus 3 dossiers. ce que je viens de citer , c'est les dossiers constants à chaque pc.
Avatar du membre
TopXm
Niveau 6
Niveau 6
Messages : 260
Enregistré le : mer. 25 mai 2011 16:37
Localisation : Usa
Status : Hors ligne

Re: [..] Rechercher un fichier, puis le copier

#10

Message par TopXm »

Hello,

Du style je copie le prefs.js de fireFox quelque part mais vu que le dossier parent de prefs.js a un nom aléatoire c'est moins simple ?

Du coup tu n'as peut-être pas besoin de récursivité

Sinon un truc du style ?
► Afficher le texteSauver prefs.js
NB : il est bien évident que dans le cas du prefs.js, passer par la lecture du profiles.ini serait bien plus propre ;)
Kevzi
Niveau 4
Niveau 4
Messages : 78
Enregistré le : dim. 17 juil. 2011 12:36
Status : Hors ligne

Re: [..] Rechercher un fichier, puis le copier

#11

Message par Kevzi »

votre technique marche parfaitement. Merci :).

j'ai une question d’ailleurs. J'ai besoin de copier le fichier "signon" pour les mots de passe. est-ce qu'il n'y a besoin que de ça. En faite, je veux faire un script qui me permet de copier ses mot de passes firefox sur n'importe quel pc.
Avatar du membre
TopXm
Niveau 6
Niveau 6
Messages : 260
Enregistré le : mer. 25 mai 2011 16:37
Localisation : Usa
Status : Hors ligne

Re: [R] Rechercher un fichier, puis le copier

#12

Message par TopXm »

En effet le fichier signons.sqlite devrait suffire, mais je n'en mettrai pas mes ongles à couper.

Le plus simple étant de faire la copie à la mimine d'une machine à l'autre voir si cela suffit ;)

NB : il existe un plugin sympa sous FF pour gérer les SQLITE : https://addons.mozilla.org/fr/firefox/a ... e-manager/
Kevzi
Niveau 4
Niveau 4
Messages : 78
Enregistré le : dim. 17 juil. 2011 12:36
Status : Hors ligne

Re: [R] Rechercher un fichier, puis le copier

#13

Message par Kevzi »

Pouvez-vous me dire comment l'utiliser ? car j'essaye d'ouvrir le fichier sqlite avec firfox, mais je n'arrive pas à l'ouvrir.


PS: c'est bon j'ai réussi. encore merci
Avatar du membre
TopXm
Niveau 6
Niveau 6
Messages : 260
Enregistré le : mer. 25 mai 2011 16:37
Localisation : Usa
Status : Hors ligne

Re: [R] Rechercher un fichier, puis le copier

#14

Message par TopXm »

Tu as installé l'extension proposée au dessus ?

Le format SQLITE c'est une base de données donc il faut l'ouvrir avec un outil qui va bien.
Répondre