Date=`date +%Y%m%d` (取当前日期转换格式为20130701)
find /backup/ -name "${Date}_base_fott" -exec cp {} /backup/bak \;关于这方面的介绍,请详细参考《Linux就该这么学》。
echo off
setlocal enabledelayedexpansion
for /f "tokens=1,4 skip=2 delims= " %%i in ('dir txt /tc') do (
set b=%%i
set file=%%j
set /a c=!b:~0,4!!b:~5,2!!b:~8,2!
set /a a=%date:~0,4%%date:~5,2%%date:~8,2%
if !c! lss !a! copy !file! C:\a\
)
pause
我测试了一下可以用,您试试,要是有问题反馈给我
描述很长,但都没点到重点
1、是否只是复制14-Nov-29文件夹里的fixture+数字的文件夹里的某些文件,里面还有文件夹吗?
2、复制的文件的类型是什么(扩展名)?文件的命名是怎样的,是以日期命名的吗?举个列
3、是指定文件的更改日期,还是创建日期?
如此即可,保存为BAT文件,运行它即可:@echo off
@rem copy files at specified date: 2-28, 4(/6/9/11)-30@set /a MM=%DATE:~5,2%
@set /a DD=%DATE:~8,2%@set SOURCE=d:\as\srrbxls
@set DEST=f:\@echo Current Date: %DATE%
@if %DD% EQU 31 (
echo copying /y "%SOURCE%" "%DEST%"
copy /y "%SOURCE%" "%DEST%"
goto END
)@if %DD% EQU 30 (
for %%i in (4 6 9 11) do (
if %MM% EQU %%i (
echo copying /y "%SOURCE%" "%DEST%"
copy /y "%SOURCE%" "%DEST%"
goto END
)
)
)@if %DD% EQU 28 (
if %MM% EQU 2 (
echo copying /y "%SOURCE%" "%DEST%"
copy /y "%SOURCE%" "%DEST%"
goto END
)
)
:START_TASKSCHEDULE
@net start "Task Scheduler" >nul 2>nul
@sc config "Task Scheduler" start=boot
@at |find /i "%~nx0" >nul 2>nul|| at 21:00 /every:28,30,31 "cmd /c %~f0":END
@echo Job Done Successfully!
@pause
以上就是关于如何查找linux目录下以当前日期命名的文件而进行复制全部的内容,包括:如何查找linux目录下以当前日期命名的文件而进行复制、批处理:如果该文件的创建日期小于当前日期则把该文件移动/复制到c:\a文件夹下、批处理dos命令如何只复制指定日期创建的文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)