【发布时间】:2015-06-01 22:58:40
【问题描述】:
我今天有一个关于批处理文件的问题,因为我对它们完全陌生。我想创建一个主批处理文件来更新文件名中带有日期的其他批处理文件。
例如,文件名 = 测试文件 (20150101).txt。我想创建一个批处理文件来自动更新文件名末尾的日期,所以我不必每次都更改它。我试过使用
FOR /F "tokens=1-3 delims=/" %%a IN (test file(20150101)) DO (
SET _Month=%%a
SET _Day=%%b
SET _Year=%%c
)
ECHO Month %_Month%
ECHO Day %_Day%
ECHO Year %_Year%
这似乎不适用于我正在尝试做的事情。他们是完成它的更好方法吗请放轻松,因为我对此完全陌生
【问题讨论】:
-
嗨--只是想为您节省很多痛苦、痛苦和时间。批处理语言在解析文本、读取、写入和操作数据等方面非常难以学习和理解。如果您刚开始编写脚本,请跳过学习批处理并专注于 PowerShell,因为它更容易学习等等强大。
-
PowerShell 不像批处理那样可移植,命令也不那么容易记住。 PowerShell 非常冗长,看起来它是由有打字癖的人开发的。只需双击它们即可运行批处理脚本。必须先在系统上正确配置 PowerShell,然后才能运行脚本,这使得将脚本部署到多台计算机非常痛苦。
-
为什么要解析文件名?为什么不根据当前日期生成时间戳并简单地重命名文件?或者您打算让用户输入一个日期,然后批处理文件搜索名称中包含该日期的其他文件?我不清楚你在问什么。
-
Magoo,它现在似乎读取了文件,但是一旦它将新日期读入变量中,我如何让它显示文件名和更新日期?
-
@magoo。请参考之前的帖子。