1 votes

Utilisation des dates dans un nom de fichier batch

J'ai un fichier qui est généré avec la date actuelle en utilisant le mois, le jour et l'année. Auparavant, ce fichier n'incluait pas de date et j'utilisais un script avec _%All% dans un fichier batch pour déplacer le fichier vers un dossier différent et cela fonctionnait bien.

J'ai maintenant besoin de la syntaxe correcte à utiliser pour que le script prenne le fichier avec la date actuelle et continue de déplacer le fichier dans un dossier de sauvegarde.

Voici le script qui a été utilisé avec succès.

@echo off
@For /F "tokens=1,2,3,4 delims=/ " %%A in ('Date /t') do @(
  Set DayW=%%A
  Set Day=%%B
  Set Month=%%C
  Set Year=%%D
  Set All=%%A%%B%%C%%D
  )

move \\crserverXX\Batch\ASCII\OCR1_CRM\OCR1.CSV \\crserverXX\Batch\ASCII\OCR_Backup\OCR1.CSV
ren \\crserverXX\Batch\ASCII\OCR_Backup\OCR1.CSV OCR1_%All%.CSV
move \\crserverXX\Batch\ASCII\OCR1_CRM\OCR1.CSV.bak \\crserverXX\Batch\ASCII\OCR_Backup\OCR1.CSV.bak
ren \\crserverXX\Batch\ASCII\OCR_Backup\OCR1.CSV.bak OCR1_%All%.CSV.bak

Le problème maintenant est que le fichier généré chaque jour inclura également la date comme suit : OCR1081916.CSV.

Quelle est la bonne façon d'utiliser la variable de date pour qu'elle déplace le fichier OCR1 quel que soit la date ?

0voto

DavidPostill Points 140654

J'ai besoin du script pour déplacer le fichier de l'emplacement d'origine vers l'emplacement de sauvegarde

À ce moment-là, puisque le fichier est généré avec une date chaque jour

Vous pouvez supprimer la plupart de votre fichier batch dans ce cas. Tout le code pour manipuler la date et renommer les fichiers n'est pas nécessaire.

Utilisez le fichier batch suivant:

@echo off
move \\crserverXX\Batch\ASCII\OCR1_CRM\OCR1*.CSV \\crserverXX\Batch\ASCII\OCR_Backup\
move \\crserverXX\Batch\ASCII\OCR1_CRM\OCR1*.CSV.bak \\crserverXX\Batch\ASCII\OCR_Backup\

Lecture complémentaire

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X