首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用批处理文件重命名文件以包含日期?

如何使用批处理文件重命名文件以包含日期?
EN

Stack Overflow用户
提问于 2013-09-19 21:04:24
回答 2查看 26.6K关注 0票数 6

我有一个显示报警打印机的文本文件。我想在Windows XP下设置一个批处理文件,将报警打印机的默认名称更改为包含日期,这样可以更容易地搜索错误。报警打印机被捕获到文本文件中。

我可以更改名称,但每次我尝试将名称设置为日期时,要么什么都没有发生,要么名称改为代码。

到目前为止我已经试过了

代码语言:javascript
复制
for /f "tokens=1-5 delims=/ "%d in (%date%) do rename "C:\TPM 4 Alarm Printer\test.txt" %%e-%%f-%%g.txt

代码语言:javascript
复制
for /F "tokens=2,3,4 delims=/ " %%i in ('date/t') do set y=%%k
for /F "tokens=2,3,4 delims=/ " %%i in ('date/t') do set d=%%k%%i%%j
for /F "tokens=5-8 delims=:. " %%i in ('echo.^| time ^| find "current" ') do set t=%%i%%j
set t=%t%_ if "%t:~3,1%"=="_"
set t=0%t% set t=%t:~0,4%
set "C:\Users\e727896\Desktop\test.txt=%d%%t%"
echo %C:\Users\e727896\Desktop\test.txt% –
EN

回答 2

Stack Overflow用户

发布于 2013-09-20 08:36:59

类似这样的东西应该可以在XP上运行:

代码语言:javascript
复制
ren "C:\TPM 4 Alarm Printer\test.txt" "%date:~4,2%-%date:~7,2%-%date:~10,4%.txt"

只需根据您的问题进行调整即可。

票数 6
EN

Stack Overflow用户

发布于 2013-09-20 09:28:17

如果您使用的是XP Pro,这将提供更可靠的时间戳。

代码语言:javascript
复制
@echo off
for /f "delims=" %%a in ('wmic OS Get localdatetime  ^| find "."') do set "dt=%%a"
set "YY=%dt:~2,2%"
set "YYYY=%dt:~0,4%"
set "MM=%dt:~4,2%"
set "DD=%dt:~6,2%"
set "HH=%dt:~8,2%"
set "Min=%dt:~10,2%"
set "Sec=%dt:~12,2%"

set datestamp=%YYYY%%MM%%DD%
set timestamp=%HH%%Min%%Sec%
set fullstamp=%YYYY%-%MM%-%DD%_%HH%-%Min%-%Sec%

ren "C:\TPM 4 Alarm Printer\test.txt" "Alarm - %fullstamp%.txt"
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18895422

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档