Board logo

标题: [文件操作] 问:批处理》随机子孙玄曾文件名除了jpg、bmp等格式》如何前缀8位数年月日修改日期? [打印本页]

作者: youxianwei    时间: 2022-1-19 14:18     标题: 问:批处理》随机子孙玄曾文件名除了jpg、bmp等格式》如何前缀8位数年月日修改日期?

本帖最后由 youxianwei 于 2022-1-24 10:48 编辑

问:批处理》随机子孙玄曾文件名除了jpg、bmp等格式》如何前缀8位数年月日修改日期?

修改前\1级目录\有很多***.***文件,,,\1级目录\2级目录\有很多***.***文件,,,\1级目录\2级目录\3级目录\有很多***.***文件
修改后\1级目录\20180115***.***文件,,,\1级目录\2级目录\20190501***.***文件,,,\1级目录\2级目录\3级目录\20200116***.***文件,除了指定jpg格式外的所有文件都前缀了其文件修改日期。

网上搜到一个所有格式的,怎么改代码除了jpg、doc、xls格式除外?
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
for /f "delims=" %%f in ('dir/b/s/a-d *.* ' ) do (
::得到文件修改时间
set _fTIME=%%~tf
::截取年月日
set _nTIME=!_fTIME:~0,10!
::替换掉/
set _nTIME=!_nTIME:/=!
::替换掉-
set _nTIME=!_nTIME:-=!
::前缀和原文件名之间用下划线_连接
set _nTIME=!_nTIME!_
::重命名文件
ren "%%f" "!_nTIME!%%~nxf"
)
endlocal
pause
作者: Batcher    时间: 2022-1-19 14:22

回复 1# youxianwei


    请举例说明修改之前和修改之后分别是什么样子的
作者: Batcher    时间: 2022-1-19 15:59

回复 1# youxianwei
  1. for /f "delims=" %%f in ('dir /b /s /a-d *.* ^| findstr /v /e /c:".jpg" /c:".doc" /c:".xls"' ) do (
复制代码





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2