月份的Windows环境变量

时间:2012-06-24 22:55:35

标签: windows batch-file environment-variables shortcuts

我有一个将日志文件和屏幕截图定期写入文件夹的过程
之间 每周30-50个文件。文件夹结构为..\Year\Month\filename.ext,无法更改。

我想创建一个快捷方式来粘贴我的收藏夹,这样我就可以快速访问此文件夹,但我需要YEARMONTH的变量。这有环境变量吗?

关于如何创建一个自动更新的最佳选择,最好没有脚本或预定作业?

1 个答案:

答案 0 :(得分:6)

%DATE%环境变量保存当前日期。您可能很想用%DATE:~6,4%解析日期以获得年份。

但这种方法不会很稳固。 %DATE%使用“短日期格式”的Windows设置返回当前日期。问题是短日期格式设置是完全无限可定制的。一个用户可以配置其系统以将短日期显示为29/06/2012;而另一个用户(即使在同一系统中)可以选择Fri062912。对于BAT程序员来说,这是一场彻底的噩梦。

一种可能的解决方案是使用 WMIC 。 WMIC是WMI的WMI命令行界面。 WMI Windows Management Instrumentation是http://en.wikipedia.org/wiki/Windows_Management_Instrumentation

WMIC Path Win32_LocalTime Get Day,Hour,Minute,Month,Second,Year /Format:table

以方便的方式返回日期,以便用FOR。

直接解析它

完成解析并将各个部分放在一起

FOR /F "skip=1 tokens=1-6" %%A IN ('WMIC Path Win32_LocalTime Get Day^,Hour^,Minute^,Month^,Second^,Year /Format:table') DO (
  SET /A MONTH=%%D
  SET /A YEAR=%%F
)

您的快捷方式可以指向包含上述代码的BAT文件,然后在右侧文件夹中打开资源管理器。

start "" "D:\FOLDER\%YEAR%\%MONTH%"