将参数化文件夹名称传递给命令行

时间:2013-04-10 12:59:31

标签: command-line batch-file command-line-arguments

我使用以下命令行:

调用run.bat TEST.properties

在TEST.properties文件中,我初始化以下参数

output.dir = C:/ Test_Results

我希望每次调用脚本时'Test_Results'都包含一个时间戳。我怎么能做到这一点?谢谢!

2 个答案:

答案 0 :(得分:3)

在TEST.properties.bat中,在

之后
output.dir=C:\Test_Results

插入行

echo %date% %time% >>%output.dir%\my_timestamps.txt

以及运行TEST.properties.bat的最新日期/时间将显示在C:\Test_Results\my_timestamps.txt

请注意/是一个开关指示符。 \是目录分隔符。

答案 1 :(得分:2)

如果您在'Test_Results'中只需要1个时间戳:

set test=%1

rem insert timestamp generating code below if needed

set timestamp=%time%

for /f "tokens=1,2* delims==" %%i in (%test%) do (if "%%i"=="output.dir" echo %timestamp%>%%j)

如果您需要所有时间戳:

set test=%1

rem insert timestamp generating code below if needed

set timestamp=%time%

for /f "tokens=1,2* delims==" %%i in (%test%) do (
  if "%%i"=="output.dir" (
    if not exist %%j (echo %timestamp%>%%j) else (
      echo %timestamp%>temp.txt
      copy %%j+temp.txt %%j
      del temp.txt
    )
  )
)