Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1690 connectés 

  FORUM HardWare.fr
  Programmation

  [batch] détruire fichier s'il n'existe pas déjà à un autre endroit...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[batch] détruire fichier s'il n'existe pas déjà à un autre endroit...

n°88772
z0rglub
Posté le 12-01-2002 à 23:39:15  profilanswer
 

bonjour,
certains ont peut-être vu que je faisais des fichiers batch en ce moment.... Voici un nouveau pb (que je vais résoudre grâce à vous sûrement...)
Je fais une copie d'un repertoire vers un autre :
xcopy "D:\images\*.*" "\\Pookie\echanges\Pierrick\sauvegarde\images\" /s/d/y
le /d permet de ne copié que les fichiers qui sont à la source et pas à la destination, et de remplacer les fichiers qui sont plus récent à la source qu'à la destination. (Si je travaille sur un fichier par exemple, et qu'il a été modifié depuis la dernière sauvegarde...)
Mon problème c'est que si je décide de faire du ménage à la source et de supprimer ou de déplacer des fichiers, je veux retrouver parfaitement la même organisation du côté de la destination.
Exemple :
source au jour 1 :  
fichier D:\images\toto.jpg
fichier D:\images\robert.jpg
destination jour 1 :
fichier D:\images\toto.jpg
fichier D:\images\robert.jpg
 
source au jour 2 : // suppression de toto.jpg
fichier D:\images\robert.jpg
destination jour 2 :
fichier D:\images\toto.jpg alors qu'il n'existe plus côté source
fichier D:\images\robert.jpg  
 
La première solution que j'employais jusqu'à maintenant, à la barbare, c'était de supprimer intégralement toute la destination et de tout recopier à partir de la source. Très long quand on sait que ça passe par le réseau et que je suis en 10 Mbits et que le repertoire source fait 2 Go
 
Est-ce que vous savez comment faire ce que je veux ? (et est ce que j'ai éé assez clair ?)


---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
mood
Publicité
Posté le 12-01-2002 à 23:39:15  profilanswer
 

n°88792
stef_dober​mann
Personne n'est parfait ...
Posté le 13-01-2002 à 00:40:51  profilanswer
 

:hello:
tu peux essayer
if not exist toto.jpg then delete toto.jpg
 
seul probleme, tu devra ecrire ca pour chacun des fichiers  :cry:


---------------
Tout à commencé par un rêve...
n°88838
z0rglub
Posté le 13-01-2002 à 11:16:31  profilanswer
 

en effet,
etape 1 : récupérer tous les chemins de fichiers de la destination
etape 2 : pour chacun des chemin, vérifier s'il existe à la source et le détruire si non trouvé à la source


---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
n°88944
z0rglub
Posté le 13-01-2002 à 20:10:10  profilanswer
 

:bounce:


---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
n°88969
stef_dober​mann
Personne n'est parfait ...
Posté le 13-01-2002 à 21:42:02  profilanswer
 

je vois pas :ouch:


---------------
Tout à commencé par un rêve...
n°89030
Mara's dad
Yes I can !
Posté le 14-01-2002 à 02:09:08  profilanswer
 

1- Créer un map vers "\\Pookie\echanges", par exemple Z:\
 
En en interractif :
Z:
CD \Pierrick\sauvegarde\images\
FOR %A in (*.*) do if not exist D:\images\%A del %A
 
En en Batch :
Z:
CD \Pierrick\sauvegarde\images\
FOR %%A in (*.*) do if not exist D:\images\%%A del %%A
 
La seul différence, en batch, faut mettre 2 %
 
Le mapping est indispensable parceque  si tu fait :
FOR %A in (\\Pookie\echanges\Pierrick\sauvegarde\images\*.*)
la variable %a ne contient pas juste le nom de fichier, mais tout le chemin, et donc il n'est pas possible de vérifier son inexistance dans D:\images.
 
C'est clair ?


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°89037
z0rglub
Posté le 14-01-2002 à 06:57:38  profilanswer
 

bon, je teste ça ce soir et je te dis si ça marche bien.
Merci du coup de main (là je pars en cours)


---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
n°89135
z0rglub
Posté le 14-01-2002 à 14:49:10  profilanswer
 

j'ai testé et ça mache impec pour le repertoire en question, mais dès qu'il s'agit des sous repertoire, ça rentrer pas dedans


---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
n°89138
Mara's dad
Yes I can !
Posté le 14-01-2002 à 14:58:19  profilanswer
 

Ben tu parlais pas de sous-répertoires !
 
Là çà se complique pas mal. En gros, y'a pas vraiement de solution purement BATCH.
 
La seule solution que je connaisse sans passer par un prog compilé, c'est d'utilise WSH : Avec un script JS, y'a moyen, mais c'est plus lourd !


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°89235
z0rglub
Posté le 14-01-2002 à 16:35:22  profilanswer
 

Mara's dad a écrit a écrit :

La seule solution que je connaisse sans passer par un prog compilé, c'est d'utilise WSH : Avec un script JS, y'a moyen, mais c'est plus lourd !  




 
Je ne sais absolument de koi tu veux parler, mais continue, ça m'intéresse.
 
PS : JS, c'est pas javascript quand même, parce que là je voisp as trop le rapport...


---------------
Ma galerie photo créée avec Piwigo et hébergée sur Piwigo.com
mood
Publicité
Posté le 14-01-2002 à 16:35:22  profilanswer
 

n°89238
Mara's dad
Yes I can !
Posté le 14-01-2002 à 16:38:56  profilanswer
 

C'est pas du javascript, c'est du JScript. Un truc spécial microsoft.
 
Regarde ce topic : http://forum.hardware.fr/forum2.ph [...] ic=&trash=
 
J'avais donné un exemple pour un PB du même genre.


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [batch] détruire fichier s'il n'existe pas déjà à un autre endroit...

 

Sujets relatifs
existe-t-il un soft pour passer d'une BD sous Access en mySQL ?c lecture dans un fichier
[batch] créer un fichier log[PHP] Insérer une chaine au début d'un fichier (clareté inside!)
[PHP] Comment envoyer un fichier sur le server?[C++] Urgent besion du fichier <socket.h> !!
Recherche Forum sur Progress ( si ca existe !!!)[DOS / batch] Quelqu'un sait où on peut trouver de la doc ?
[ASP] problème de retour chariot dans fichier txt 
Plus de sujets relatifs à : [batch] détruire fichier s'il n'existe pas déjà à un autre endroit...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR