本帖最后由 pcl_test 于 2017-3-19 23:37 编辑
- @echo off&setlocal enabledelayedexpansion
- set "seekdir=d:\ftptemp\iocm-tmp"
- set "tagtdir=d:\ftptemp\iocm-acl"
- set "backdir=d:\ftptemp\iocm-rcv"
-
- rem 获取10位时间戳
- for /f %%a in ('mshta "javascript:new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(Date.parse(new Date()).toString().substr(0,10));close();"') do set tstr=%%a
-
- rem 初始化数字序号
- set n=0
- rem 遍历seekdir目录里的文件
- for /f "delims=" %%a in ('dir /a-d /b "%seekdir%\"') do (
- rem 时间戳和数字序号相拼接
- set aa=%tstr%!n!
- rem 查找文件中是否存在指定字符串,使用&&和||进行逻辑判断,copy是复制重命名,move是移动重命名
- findstr "+ACL" "%seekdir%\%%a">nul&&(
- rem 存在指定字符串
- copy "%seekdir%\%%a" "%tagtdir%\e!aa!.acl.txt"
- )||(
- rem 不存在指定字符串
- copy "%seekdir%\%%a" "%backdir%\e!aa!.acl.txt"
- )
- rem 数字序号自增一
- set /a n+=1
- )
-
- rem 获取标准日期
- for /f "tokens=2 delims==" %%a in ('wmic path win32_operatingsystem get LocalDateTime /value ^| findstr "="') do set "strDate=%%a"
-
- rem 截取格式化日期
- set today=%strDate:~0,4%%strDate:~4,2%%strDate:~6,2%
- rem 判断指定路径当前日期的文件夹是否存在
- set "指定路径=D:\test"
- if exist "%指定路径%\%today%\" (echo;Directory already exists!) else md "%指定路径%\%today%\"
- pause
复制代码
|