The usual approach to build a timestamp for a log files in a batch is to use standard Windows utilities date and time. However the format of the output depends on locale and it is almost not possible to make the script which runs on any machine. A solution might be to create a small java tool.
Source file (datetime.java):
import java.text.SimpleDateFormat; import java.util.Calendar; public class datetime { public static void main(String[] args) { System.out.println(new SimpleDateFormat("yyyyMMdd_HHmmss") .format(Calendar.getInstance().getTime())); } }
Compilation (you need JDK for this):
javac datatime.java
The code will be compiled into datatime.class.
Use in a batch file:
java datetime>logdate.txt set /p STAMP=<logdate.txt set LOG=C:\logs\%STAMP%.log call Main.bat > %LOG%