我有一个定期将日志文件和屏幕截图写入文件夹的过程,每周创建
30-50个文件。文件夹结构是..\Year\Month\filename.ext
,它不能更改。本年度的Windows环境变量
我想创建一个快捷方式以粘贴到我的收藏夹中,以便我可以快速访问此文件夹,但我需要YEAR
和MONTH
的变量。有没有一个环境变量呢?
任何关于如何创建自动更新,最好没有脚本或预定作业的明智想法?
我有一个定期将日志文件和屏幕截图写入文件夹的过程,每周创建
30-50个文件。文件夹结构是..\Year\Month\filename.ext
,它不能更改。本年度的Windows环境变量
我想创建一个快捷方式以粘贴到我的收藏夹中,以便我可以快速访问此文件夹,但我需要YEAR
和MONTH
的变量。有没有一个环境变量呢?
任何关于如何创建自动更新,最好没有脚本或预定作业的明智想法?
%DATE%
环境变量保存当前日期。你可能会试图用%DATE:~6,4%
解析日期以获得年份。
但是这种方法不会很稳固。 %DATE%
使用“短日期格式”的窗口设置返回当前日期。问题是短日期格式设置完全无法自定义。一个用户可以配置其系统以显示短日期为29/06/2012
;而另一个用户(即使在同一系统中)也可以选择Fri062912
。这对于BAT程序员来说是一个完整的噩梦。
取而代之,一种可能的解决方案是使用WMIC。 WMIC是WMI的WMI命令行界面。 WMI Windows管理规范是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%"
见http://stackoverflow.com/questions/864718/how-to-append-a-date-in-batch-files的一些想法。 –