Board logo

标题: [文件操作] 【已解决】批处理如何根据文件夹名和文件名生成子文件夹? [打印本页]

作者: lvwenjun11    时间: 2024-9-12 10:23     标题: 【已解决】批处理如何根据文件夹名和文件名生成子文件夹?

有文件夹名为视频监控,下有多个文件240910-1111.ts、240910-12233.ts、240911-22331.ts、240911-123321.ts等
有多天的的文件,根据文件夹名 【视频监控】和读取日期【240910】、【240911】自动生成文件夹 【视频监控240910】、【视频监控240911】,并将对应文件移入该新建子文件夹
谢谢各位大佬!
作者: aloha20200628    时间: 2024-9-12 11:56

本帖最后由 aloha20200628 于 2024-9-12 12:21 编辑

回复 1# lvwenjun11

以下代码存为 test.bat 置于 ‘【视频监控】’ 目录下运行...
  1. @echo off &for /f "tokens=1 delims=-" %%a in ('dir /b/a-d *-*.ts') do if not exist "【视频监控%%a】" (
  2. md "【视频监控%%a】"
  3. move /y "%%a-*.ts" "【视频监控%%a】\"
  4. ) 2>nul
  5. pause&exit/b
复制代码

作者: 77七    时间: 2024-9-12 12:00

本帖最后由 77七 于 2024-9-12 12:05 编辑
  1. @echo off
  2. cd /d "%~dp0"
  3. (for %%d in (.) do (
  4. for /f "delims=" %%i in ('dir /b /a-d *.ts ^| findstr /rixc:"[0-9][0-9]*-[0-9][0-9]*\.ts"') do (
  5. for /f "delims=-" %%a in ("%%~ni") do (
  6. md "%%~nxd%%a"
  7. move "%%i" "%%~nxd%%a\"
  8. )
  9. )
  10. )) 2 > nul
  11. pause
复制代码

作者: lvwenjun11    时间: 2024-9-12 13:42

回复 2# aloha20200628

没反应 大佬
作者: lvwenjun11    时间: 2024-9-12 13:42

77七 发表于 2024-9-12 12:00



   
没反应 大佬
作者: aloha20200628    时间: 2024-9-12 14:03

本帖最后由 aloha20200628 于 2024-9-12 14:24 编辑

回复 4# lvwenjun11

2楼代码测试通过的假设》
在当前目录中存在目标文件 *.ts 如 240910-1111.ts、240910-12233.ts、240911-22331.ts、240911-123321.ts ... 代码运行结果会在当前目录中创建如【视频监控240910】目录,并将 240910-*.ts 如 240910-1111.ts、240910-12233.ts 等文件移入【视频监控240910】新建目录中...
请楼主确认上述是所要求的吗?

作者: qixiaobin0715    时间: 2024-9-12 14:22

本帖最后由 qixiaobin0715 于 2024-9-12 14:27 编辑
  1. @echo off
  2. for %%i in ("%cd%") do set Folder=%%~nxi
  3. for /f "tokens=1* delims=-" %%i in ('dir /b /a-d *-*.ts') do (
  4.     md "%Folder%%%i" 2>nul
  5.     move "%%i-%%j" "%Folder%%%i\"
  6. )
  7. pause
复制代码

作者: lvwenjun11    时间: 2024-9-12 15:59

本帖最后由 lvwenjun11 于 2024-9-12 16:03 编辑

回复 6# aloha20200628
作者: lvwenjun11    时间: 2024-9-12 16:03

回复 6# aloha20200628


    搞错了大佬,_ 文件名是这个分隔符,我已经自行修改 谢谢大佬




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