标题: [文件操作] 批处理如何复制文件到文件夹,并以当天日期命名? [打印本页]
作者: colour250 时间: 2023-8-28 20:44 标题: 批处理如何复制文件到文件夹,并以当天日期命名?
因为每天都需要更改该文件,所以要每天复制一个备存,并加以当天的日期命名,然后删除10天之前的文件。请问用批处理如何书写。谢谢
作者: 77七 时间: 2023-8-28 21:59
- @echo off
- rem 批处理保存为ansi编码格式
- set "file=d:\1.txt"
- set "folder=d:\新建文件夹"
- set "DaysAgo=10"
-
- for %%a in ("%file%") do (
- for /f "delims=" %%i in ('powershell -c "Get-Date -UFormat '%%Y-%%m-%%d'"') do (
- copy /y "%file%" "%folder%\%%~na_%%i%%~xa"
- )
- for /f "delims=" %%i in ('powershell -c "Get-Date (Get-Date).AddDays(-%DaysAgo%) -uformat "%%Y-%%m-%%d""') do (
- for /f "delims=" %%b in ('dir /b /a-d "%folder%\%%~na_*-*-*%%~xa"') do (
- if "%%~nb" leq "%%~na_%%i" (
- del "%folder%\%%b"
- )
- )
- )
- )
- pause
- exit
- 参考资料
- http://bbs.bathome.net/viewthread.php?tid=3328
- http://www.bathome.net/viewthread.php?tid=3330
复制代码
作者: colour250 时间: 2023-8-28 23:08
回复 2# 77七
谢谢,非常感谢
作者: Five66 时间: 2023-8-28 23:45
本帖最后由 Five66 于 2023-8-30 22:53 编辑
额,忘了系统日期格式修改过了,已编辑
作者: Nsqs 时间: 2023-8-29 00:35
- $today=[datetime]::Now.Date
- $targetPath='某路径'
- dir -File *.txt|?{$_.LastWriteTime -lt $today}|%{copy $_ "$targetPath\$today.$($_.Extension)"}
复制代码
保存PowerShell
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |