怎么用批处理文件显示日期和时间?谢谢!

怎么用批处理文件显示日期和时间?谢谢!,第1张

1、在需要批量处理文件的文件夹中右击选择新建一个TXT文本文档。

2、在新建的文本文档中输入一下批量处理文件的bat代码,并点击页面上的保存选项将该段代码保存到对应的文件夹中。

3、右击刚刚保存的TXT文件,选择更改文件名选项,将文件格式改为.BAT可运行文件格式。

4、更改完成后双击该可执行文件就可以批量显示当前路径中文件的时间信息。

在 Windows 系统下,可以使用以下命令将当前系统时间作为文件名后缀:

vbnet

Copy code

@echo off

setlocal enabledelayedexpansion

REM 获取当前系统时间并转换为合法的文件名格式

set datetime=%date:/=-%_%time::=-%

set datetime=%datetime: =0%

set datetime=%datetime:~0,-3%

REM 创建一个以当前系统时间为后缀的文件

echo Hello World >"example_%datetime%.txt"

解释如下:

@echo off:关闭命令行窗口的回显功能。

setlocal enabledelayedexpansion:启用变量延迟扩展,以便在代码块内使用动态变量。

set datetime=%date:/=-%_%time::=-%:获取当前系统日期和时间,并将日期中的斜杠替换为破折号,时间中的冒号替换为破折号,以便作为文件名后缀使用。

set datetime=%datetime: =0%:将时间中的空格替换为零。

set datetime=%datetime:~0,-3%:去掉时间中的毫秒部分。

echo Hello World >"example_%datetime%.txt":将字符串“Hello World”写入一个以当前系统时间为后缀的文件中。

执行该批处理脚本后,将在当前目录下创建一个类似于 example_2022-03-17_095538.txt 的文件,其中的时间部分就是当前系统时间。

基本上是对的。

通配符 * 可表示代表任意个任意字符,当它固定位置搭配其他固定字符串,就能匹配某类特点的多个文件名。

当那些固定字符串用变量表示了---也就是你说的"动态"

如果需要用的某个命令的语法中支持通配符,则用此句命令就可组成你说的"动态管理"比如

copy %date:~,4%%date:~5,2%*.dat e:\xx\

表示把当前路径中本年月号字符开始的dat文件拷贝到e:\xx文件夹中去,显然不同的年月都可用此同样命令管理

当用单个命令不足以实现管理要求,也许就要用for 命令来循环甚至还要加以"编程" 比如

for %%i in (%date:~,4%%date:~5,2%*.dat) do (...)

表示对上述类文件循环执行do后括号里的单个或多个命令,

比如括号里同样是copy命令,但就循环中某一轮就等同于执行copy单个文件,可以加上判断而实现与其它文件copy 的效果可能不同

因此你问的怎么用,或者说想要用好,取决于你整体批处理命令水平


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11640998.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存