【问题标题】:Windows Environmental Variable for Month Year月份年份的 Windows 环境变量
【发布时间】:2012-06-26 06:23:48
【问题描述】:

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

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

关于如何创建一个最好不用脚本或计划作业自动更新的方案有什么好主意吗?

【问题讨论】:

标签: windows batch-file environment-variables shortcuts


【解决方案1】:

%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%"

【讨论】:

    猜你喜欢
    • 2017-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-30
    • 2016-04-05
    • 1970-01-01
    • 2016-06-25
    • 1970-01-01
    相关资源
    最近更新 更多