Board logo

标题: 求助,批处理更改文件夹下的文件名20 [打印本页]

作者: 赚他一个亿    时间: 2020-7-20 17:09     标题: 求助,批处理更改文件夹下的文件名20

更改文件夹下的mp4文件名字
源文件是这样的
  1. Downtest_Channel40.mp4
复制代码
[attach]12687[/attach]
  1. 我想要改成这样的 IP监控点1_172.18.3.190_1_20191223082751_20191223082812_111111[/color].mp4
复制代码
[attach]12686[/attach]
注:前面的字和时间是有更改的,比如监控点2_172.18.3.191.............等等有模板之后我自己改一下前面的时间和监控点保存运行就可以了
     最后的6位数字是随机的,这个无所谓,也可以改成0001-9999这样的顺序
作者: 赚他一个亿    时间: 2020-7-20 17:16

谢谢各位出谋划策
作者: Batcher    时间: 2020-7-20 19:15

回复 1# 赚他一个亿


这两个时间戳是根据什么规律得出来的呢?
IP监控点1_172.18.3.190_1_20191223082751_20191223082812_111111.mp4
作者: 赚他一个亿    时间: 2020-7-21 08:42

回复 3# Batcher


    这个时间是根据视频监控下载时间确定的。20191223082751_20191223082812    20191223******—20191223******这日期后面六位数字可以不要。。sry
作者: Batcher    时间: 2020-7-21 09:05

回复 4# 赚他一个亿


    我换个方式问这个问题哈,比如我只知道这个文件名 Downtest_Channel40.mp4 我应该根据什么规律来判断它的下载时间?
作者: 赚他一个亿    时间: 2020-7-21 10:13

本帖最后由 赚他一个亿 于 2020-7-21 10:22 编辑

回复 5# Batcher


    这个下载时间我记得就行了。比如我下载的是2020720-2020721这个时间段的监控视频,就只需要在脚本里面手动改名字为     IP监控点1_172.18.3.190_1_20200720_20200721_111111.mp4 然后运行脚本就就可以了。
   
    换个方式说就相当于把文件夹内的文件重新命名为脚本模板里面的名字。
   文件夹内的源文件为Downtest_Channel40.mp4  Downtest_Channel40_1.mp4  Downtest_Channel40_2.mp4  我自己记得他是下载的20200720-20200721日的视频
   那么我就打开脚本,改一下里面的关键词和日期。然后再运行。就批量改名字成功了
作者: 赚他一个亿    时间: 2020-7-21 10:22

谢谢大神耐心解答
作者: zaqmlp    时间: 2020-7-21 11:09

  1. @echo off
  2. cd /d "%~dp0"
  3. set "prefix=IP监控点1"
  4. set "ip=172.18.3.190"
  5. set "num=1"
  6. set "daterange=20191223_20191223"
  7. set "ext=*.mp4"
  8. for /f "tokens=1* delims=:" %%a in ('dir /a-d/b "%ext%"^|findstr /n .*') do (
  9.     set "f=%%b"
  10.     set "n=00000000%%a"
  11.     setlocal enabledelayedexpansion
  12.     echo;"!f!" --^> "%prefix%_%ip%_%num%_%daterange%_!n:~-6!%%~xb"
  13.     ren "!f!" "%prefix%_%ip%_%num%_%daterange%_!n:~-6!%%~xb"
  14.     endlocal
  15. )
  16. pause
  17. exit
复制代码

作者: Batcher    时间: 2020-7-21 11:29

回复 6# 赚他一个亿
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set "prefix=IP监控点1_172.18.3.190_1_20200720_20200721"
  4. set "n=1000000"
  5. cd /d "%~dp0"
  6. for /f "delims=" %%i in ('dir /b /a-d "Downtest_*.mp4"') do (
  7.     set /a n+=1
  8.     ren "%%i" "%prefix%_!n:~-6!"%%~xi
  9. )
复制代码

作者: 赚他一个亿    时间: 2020-7-21 16:13

回复 8# zaqmlp


    感谢感谢都可以用的!
    论坛我捐助了一半!
作者: 赚他一个亿    时间: 2020-7-21 16:13

回复 9# Batcher


    感谢已可以用了
    论坛捐助啦1




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