1
A
回答
2
我建議你使用powershell。您可以使用Get-ChildItem
和Where-Object
得到的文件列表創建的前一天
$yesterdayFiles = Get-ChildItem | Where-Object {$_.CreationTime.Date -eq ((Get-Date).AddDays(-1).Date)}
然後你就可以使用Copy-Item
的cmdlet
2
我已經與ROBOCOPY/MINAGE試圖複製存儲在$yesterdayFiles
變量中的文件: 1 /最大生存週期:1,但似乎並不work.But工作時,我設置當前date.Here的腳本(你需要設置你的源和目標):
@echo off
set "source=C:\folder1"
set "dest=C:\folder2"
pushd "%temp%"
::get cirrent date
makecab /D RptFileName=~.rpt /D InfFileName=nul /f nul >nul
for /f "tokens=3-7" %%a in ('find /i "makecab"^<~.rpt') do (
set "year=%%e"
set "mon=%%b"
set "day=%%c"
)
del ~.*
popd
:: convert month to numeric string
for %%a in (
"Jan-01" "Feb-02" "Mar-03" "Apr-04" "May-05" "Jun-06" "Jul-07" "Aug-08" "Sep-09" "Oct-10" "Nov-11" "Dec-12"
) do (
for /f "tokens=1,2 delims=-" %%x in ("%%~a") do (
if "%mon%" equ "%%x" (
set "mon=%%y"
goto :skip
)
)
)
:skip
set "c_date=%year%%mon%%day%"
::echo %c_date%
:: is switch is for force overwriting
robocopy "%source%" "%dest%" * /maxage:1 /minage:%c_date% /is
自Vista以來,每一個窗口都內置了robocopy。如果您的系統是在XP或Vista下運行的,您需要從Microsoft網站下載它。
1
該批處理文件選擇在今天之前在同一日期上創建的所有文件。如果您確定有昨天創建的文件,那麼它可以解決您的問題。
@echo off
setlocal EnableDelayedExpansion
set "yesterday="
for /F "skip=5 tokens=1,4*" %%a in ('dir /TC /O-D /A-D') do (
if "%%a" neq "%date%" (
if not defined yesterday set "yesterday=%%a"
if "%%a" equ "!yesterday!" (
echo Created yesterday: %%a "%%c"
) else (
goto break
)
)
)
:break
相關問題
- 1. 昨天的scp文件
- 2. 昨天或今天創建的文件
- 3. 設置昨天批處理文件
- 4. 昨天COUNTIFS?
- 5. 從昨天
- 6. datagridview昨天
- 7. perl在本地時間打開文件與昨天的日期()
- 8. 創建一個腳本來收集昨天的文件
- 9. Windows批處理腳本下載昨天的文件
- 10. 來自昨天的天氣
- 11. PHP:日期「昨天」,「今天」
- 12. java.io.FileNotFoundException爲其昨天
- 13. 昨天,我用PHP
- 14. 昨天sql調用
- 15. 獲取昨天日期 - KSH腳本
- 16. 昨天修改的Linux文件夾的所有文件
- 17. 文本文件的副本
- 18. 甲骨文不是昨天小時
- 19. 使用日期如何計算昨天昨天或前一天等日期?
- 20. 如何從本月的第一天到昨天獲取數據
- 21. 獲取今天,昨天和本週的記錄
- 22. PHP:讓今天的過濾器/昨天
- 23. 訪問比較今天和昨天
- 24. PHP今天/昨天在論壇
- 25. 從昨天/今天查看日誌
- 26. 定義VAR今天和昨天
- 27. PHP日期格式今天/昨天
- 28. 今天和昨天找一段時間
- 29. Grails昨天的標準
- 30. 獲取昨天的日期
你有沒有嘗試過一些東西,並面臨一個具體的問題,或者你只是要求工作代碼? – Naigel
FORFILES -p E:\ test/d -1 -m * .txt -c「CMD/C XCOPY E:\ test \ @FILE E:\ test \ 123」(它是昨天及以前)c:\ windows \ system32 \ xcopy.exe E:\ test \ *。txt E:\ test \ 123 \/s/f/y/d:04-07-2015(昨天和晚些時候)我不知道如何獲取昨天的文件 – MiK