Nom de fichier généré par le système avec horodatage dans le Batch Script

MD Aminul Islam 12 juillet 2022
Nom de fichier généré par le système avec horodatage dans le Batch Script

Parfois, nous générons des journaux système à partir d’un script Batch. Mais, le problème ici est le nom du fichier journal ; si le nom de fichier n’est pas unique, il peut remplacer le fichier portant le même nom.

Dans cet article, nous verrons comment générer un nom de fichier unique à partir du système en utilisant l’heure et la date actuelles. De plus, nous discuterons d’un code et de son explication pour le rendre plus facile à comprendre.

Nom de fichier généré par le système avec horodatage dans le Batch Script

Nous utilisons ici l’heure et la date car l’heure et la date ne sont pas toujours les mêmes et fournissent des informations sur le nom du fichier. Dans l’exemple ci-dessous, nous allons générer un fichier journal dont le nom est la combinaison de l’heure et de la date.

Le code de notre exemple ressemblera à ce qui suit :

@ECHO off
SET YY=%date:~10,4%
SET MM=%date:~4,2%
SET DD=%date:~7,2%
SET HH=%time:~0,2%
IF %HH% lss 10 (SET HH=0%time:~1,1%)

SET NN=%time:~3,2%
SET SS=%time:~6,2%
SET MS=%time:~9,2%

SET NEWFILENAME=%YY%%MM%%DD%-%HH%%NN%%SS%
ECHO "This is a data" > "G:\Directory\access_%NEWFILENAME%.txt"

N’oubliez pas que Batch contient des variables intégrées pour l’heure et la date ; ce sont %time% et %date%. Ces variables produisent l’heure et la date dans un format de chaîne.

Dans notre code, nous avons séparé les parties de la date de la chaîne en utilisant ces lignes :

SET YY=%date:~10,4%
SET MM=%date:~4,2%
SET DD=%date:~7,2%

De même, nous avons séparé les parties du temps de la chaîne en utilisant ces lignes :

SET HH=%time:~0,2%
IF %HH% lss 10 (SET HH=0%time:~1,1%)

SET NN=%time:~3,2%
SET SS=%time:~6,2%
SET MS=%time:~9,2%

Ensuite, nous avons créé le nom du fichier avec la combinaison de l’heure et de la date à l’aide de la ligne :

SET NEWFILENAME=%YY%%MM%%DD%-%HH%%NN%%SS%

Et enfin, nous avons créé un fichier avec le nom généré par le système dans un répertoire spécifique en utilisant la ligne :

ECHO "This is a data" > "G:\Directory\access_%NEWFILENAME%.txt"

Lorsque vous exécutez ce script sur votre invite de commande, vous verrez un fichier dont le nom est la combinaison de la date et de l’heure. Et le fichier contient le texte This is a data.

Veuillez noter que le code que nous avons partagé dans cet article est écrit en script Batch et ne s’exécute que sur l’environnement d’invite de commande Windows.

MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn