> Tous les forums > Forum Windows 7
 Aide à l'ecriture d'un fichier batch ou script de deplacement de fichier.
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
makulafo
  Posté le 12/05/2013 @ 23:39 
Aller en bas de la page 
Petit astucien

Bonsoir,

Je souhaite creer un batch ou un script qui effectue deux actions:

- Rechercher dans le dossier Y des fichiers dont le nom contient une chaine de caractere (on doit pouvoir chercher plusiers chaines de caractere en meme temps: *debra*;*ferma*; *wind)

Grace à un précédent post, je peux faire cette operation grace à powerdesk

- Dans la liste de fichier trouvés possedant la même chaine de caractere, déplacer le fichier le plus recent dans un dossier x


Merci de me donner un coup de main

Publicité
G2mains
 Posté le 13/05/2013 à 09:13 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Un script pour déplacer le fichier le plus récent dans un dossier à partir d'un résultat de recherche.

Sélectionner et déplacer le fichier le plus récent parmi des fichiers physiquement présents dans un dossier :

FOR /F "delims=|" %%I IN ('DIR "D:\Y\*.*" /B /O:D') DO SET NewestFile=%%I
copy "D:\Y\%NewestFile%" "D:\X"

Bien entendu, les chemins en rouge sont à titre d'exemples.



Modifié par G2mains le 13/05/2013 09:16
makulafo
 Posté le 13/05/2013 à 11:15 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Merci pour le script.

FOR /F "delims=|" %%I IN ('DIR "D:\Y\*.*" /B /O:D') DO SET NewestFile=%%I
copy "D:\Y\%NewestFile%" "D:\X"

J'ai compris la partie du script en rouge: les dossiers d'origine et de destination. Mais dans la selection des fichiers j'ai du mal

- il s'agit de fichiers de même type, l'extension n'est pas importante

- Le Critere de selection se fait sur des chaines de caracteres presentes dans le nom de fichier (*AB*2012*; *CD*2013*;*FG*2013*)

l'exemple entre parenthèse est une recherche telle que je la fais dans powerdesk pour recherche les fichiers ayant dans leurs noms: la chaine de caractere AB et se terminant par 2013, ou la chaine CD et se terminant par 2012, ou la chaine FG et se terminant par 2013.

Comment specifier ceci dans le script que tu proposes ?

G2mains
 Posté le 13/05/2013 à 16:46 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Tu peux faire un script pour chaque chaîne de caractère :

FOR /F "delims=|" %%I IN ('DIR "D:\Y\*AB*2012*.*" /B /O:D') DO SET NewestFile=%%I
copy "D:\Y\%NewestFile%" "D:\X"

FOR /F "delims=|" %%I IN ('DIR "D:\Y\*CD*2013*.*" /B /O:D') DO SET NewestFile=%%I
copy "D:\Y\%NewestFile%" "D:\X"

ou D:\Y\*AB*2012.*



Modifié par G2mains le 13/05/2013 17:58
makulafo
 Posté le 14/05/2013 à 19:54 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

j'ai fait un test, il semple que le critere deux de mon script n'est pas pris en compte: "Dans la liste de fichier trouvés possedant la même chaine de caractere, déplacer le fichier le plus recent dans un dossier x"

est ce moi qui ne le reprend pas correctement ?

merci de me dire

G2mains
 Posté le 14/05/2013 à 20:49 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
makulafo a écrit :

j'ai fait un test, il semple que le critere deux de mon script n'est pas pris en compte: "Dans la liste de fichier trouvés possedant la même chaine de caractere, déplacer le fichier le plus recent dans un dossier x"

est ce moi qui ne le reprend pas correctement ?

merci de me dire

Sans voir ton script, c'est assez difficile à dire.



Modifié par G2mains le 14/05/2013 20:50
pc-facile13
 Posté le 17/05/2013 à 22:31 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonsoir,

Je n'avais pas eu trop de temps jusque là, mais voici un script qui devrait faire ce que tu demandes (si j'ai bien compris {#}).

Mon sript


En gros tu lances le script:

- Tu choisis le répertoire dans lequel rechercher les fichiers
- La syntaxe des fichiers à rechercher (l'* est autorisé + il faut séparer les noms de fichiers par des ";" ou par un saut de ligne)
- Si tu souhaites déplacer ou copier le fichier le plus récent correspondant au critère de nom (attention pour la copie, si plusieurs critères correspondent au même fichier la même copie sera réalisée plusieurs fois il n'y aura donc pas forcément 50 fichiers (selon ton cas) dans le répertoire de destination).

Les fichiers du répertoire de destination seront écrasés (si déjà existant).
Pour le moment le seul moyen d'annuler un traitement est de faire un clic droit sur l'icone du script qui se trouvera à coté de l'horloge Windows -> "Arrêter le script" (je ne me suis pas amusé à tester sur 15000 fichers / 50 recherches {#}). Ceci dit il est (normalement) possible de continuer à travailler tout en laissant tourner le script en fond (si le processeur et/ou mémoire sature(nt) sur les gros traitements, dit le moi et j'ajouterais des petites pauses afn de "calmer le jeu").

Les chemins / noms de fichiers sont mémorisés dans un fichier ini qui se trouvera dans le même répertoire que le script (et qui sera mis à jour lors de la validation).

Bon test.

PS: les dates de modifications des fichiers doivent être sous la forme "JJ/MM/AAAA HH:MN" (= Paramètres régionaux Français)

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
499,99 €PC Portable 14 pouces HUAWEI MateBook (Core i5, 8Go RAM, 512 Go SSD) à 499,99 €
599 € -17%

Cdiscount fait une promotion sur le PC Portable 14 pouces HUAWEI MateBook B3-410 qui passe à 499,99 € alors qu'on le trouve ailleurs à partir de 599 €. Ce portable possède un processeur Intel Core i5-10210U, de 8 Go de RAM, d'un SSD 512 Go, d'un chip graphique Intel UHD et tourne sous Windows 10 Pro que vous pourrez mettre à jour pour Windows 11.

Son poids plume de 1,38 Kg et son autonomie de 10 heures vous permettront de l'emmener facilement partout avec vous. Possède un capteur d'empreinte digitale intégré au bouton d'alimentation. Pratique pour déverrouiller son ordinateur facilement et en toute sécurité.


Voir l'offre
194,99 €Lego 76218 Marvel Super Heroes Le Saint des Saints à 194,99 €
249,99 € -22%

Amazon fait une promotion sur le set Lego 76218 Marvel Super Heroes Le Saint des Saints qui passe à 194,99 € au lieu de 249,99 €. Cette maquette LEGO Marvel Avengers de la résidence emblématique du Docteur Strange comprend un bâtiment modulaire de 3 étages avec 4 façades, de nombreux détails du film et 9 minifigurines familières de l'univers cinématographique Marvel. 2708 pièces.


Voir l'offre
194,23 €SSD externe portable USB 3.1 SanDisk Extreme NVMe 2 To (1050 Mo/s) à 194,23 € livré
230 € -16%

Amazon Allemagne fait une promotion sur le SSD externe portable USB 3.1 SanDisk Extreme NVMe 2 To qui passe à 189,58 € (avec la TVA ajustée). Comptez 4,65 € pour la livraison en France soit un total de  194,23 € livré alors qu'on trouve le SSD à plus de 230 € ailleurs. Le disque SSD SanDisk Extreme NVMe Portable 2 To permet, grâce à sa connectique USB 3.1, des haute vitesse de transfert pouvant aller jusqu'à 1050 Mo/s grâce au disque NVMe qu'il contient. Sa coque robuste et certifiée IP55 (eau et poussière) protège vos données partout où vous allez. Vous ne craindrez pas de l'emporter partout avec vous grâce à sa conception robuste et résistante avec un coeur de SSD résistant aux chocs. Le logiciel SanDisk inclu SecureAccess peut crypter vos fichiers personnels. Garantie 5 ans. Interface : USB 3.1 Type A et C.


Voir l'offre
94,99 €Nouvelle liseuse Amazon Kindle Paperwhite 6.8 pouces avec éclairage chaud réglable à 94,99 €
139,99 € -32%

Amazon fait une superbe promotion sur la toute dernière version de sa liseuse Kindle Paperwhite qui passe à 94,99 € au lieu de 139,99 €. 

Cette version est désormais doté d'un écran 6,8 pouces (6 pouces auparavant), de bords plus fins, d'un éclairage réglable (vous pouvez changer la teinte de l'écran d'une lumière blanche à un ambre chaud ou programmer quand changer la lumière) avec 17 Leds et d'une autonomie pouvant aller jusqu'à 10 semaines, et 20 % plus rapide pour tourner les pages. Avec une façade plane et un écran sans reflets de 300 ppp qui se lit comme une véritable page imprimée, même en plein soleil.

Elle est toujours résistante à l'eau (IPX8), afin que vous puissiez lire en toute tranquillité à la plage, au bord de la piscine ou dans le bain. Cette liseuse dispose du WiFi, d'un port de charge USB C et de 8 Go d'espace de stockage.

Formats pris en charge : Epub, Kindle Format 8 (AZW3), Kindle (AZW), TXT, PDF, MOBI non protégé, PRC natif ; HTML, DOC, DOCX, JPEG, GIF, PNG, BMP converti.


Voir l'offre

Sujets relatifs
AIde pour realiser Un batch de deplacement conditionnel de fichier
Batch de recherche et copie de multiple fichier.
Reinstaller windows7 a l'aide d'un fichier vhd
Insertion ouy déplacement d'images dans fichier photos
fichier batch avec espaces (pas trouver la solutions sur les autres sujets)
Aide pour fichier .bat
pb dans les deplacement de fichier d'un dossier a un autre
Demande d'aide pour un script batch DOS
Fichier d'aide (.hlp) antérieurs à 7
Déplacement de fichier win 7
Plus de sujets relatifs à Aide à l''ecriture d''un fichier batch ou script de deplacement de fichier.
 > Tous les forums > Forum Windows 7