我可以使用以下命令将文件的时间戳更改为当前日期时间:
copy /b filename.ext +,,
我需要的是一种将时间戳设置为上一个日期时间(-1天,-1周等)的方法
这可能吗?
我通常在linux中做的是:
touch -d "$(date -R -r filename) - 2 hours" filename
但我需要这个用于Windows命令行,而不是PowerShell或任何其他替代方案。
答案 0 :(得分:1)
最后我使用了Gnu的Windows端口:
http://gnuwin32.sourceforge.net/
此示例更改文件夹中所有文件的时间戳:
for /f "tokens=*" %i in ('dir "C:\Data\*" /s /b') do ("GnuWin32\Touch.exe" -t 1003141400 "%i")
或在批处理脚本中:
for /f "tokens=*" %%i in ('dir "C:\Data\*" /s /b') do ("GnuWin32\Touch.exe" -t 1003141400 "%%i")
答案 1 :(得分:0)
在Powershell中,此方法有效:
(gci)[1].LastWriteTimeUtc = (New-Object datetime 2013,12,31)