Page 1 sur 1

[R] Rechercher un fichier, puis le copier

Posté : dim. 30 oct. 2011 12:37
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.

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

Posté : dim. 30 oct. 2011 12:42
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:

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

Posté : dim. 30 oct. 2011 12:42
par mikell
:shock:

Code : Tout sélectionner

$file = dossier_x\fichier_y
If FileExists($file) Then FileCopy($file, @desktopdir & "\fichier_y")

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

Posté : dim. 30 oct. 2011 12:43
par mikell
:mrgreen: la simultanéité existe, je l'ai rencontrée

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

Posté : dim. 30 oct. 2011 12:56
par Kevzi
Ce que j'ai oublié de dire, ce que les dossiers sont différents dans chaque pc.

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

Posté : dim. 30 oct. 2011 13:13
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

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

Posté : dim. 30 oct. 2011 22:03
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 ?

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

Posté : dim. 30 oct. 2011 23:47
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)

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

Posté : lun. 31 oct. 2011 11:34
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.

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

Posté : lun. 31 oct. 2011 12:34
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 ;)

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

Posté : lun. 31 oct. 2011 12:51
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.

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

Posté : lun. 31 oct. 2011 13:47
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/

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

Posté : lun. 31 oct. 2011 14:40
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

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

Posté : lun. 31 oct. 2011 15:55
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.