找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 20634|回复: 2

[文本处理] 批处理获取指定文件夹名如何改成自动获取名?

[复制链接]
发表于 2023-11-18 13:02:49 | 显示全部楼层 |阅读模式
因每次都要修改文件夹为New,想改成自动获取是啥文件夹名,然后合并后的文件名也是文件夹名~

求大佬指教~
  1. @if(0)==(0) echo off&setlocal EnableDelayedExpansion&cd %~dp0
  2. title 获取"New"文件夹的MP4文件名合并视频
  3. type nul>"%~dp0New\New.txt"
  4. rem 列出文件名
  5. cd "%~dp0New"
  6.     @for /f "delims=" %%j in ('dir /b/a-d/on "*.mp4"^|cscript -nologo -e:jscript "%~f0"') do (
  7.             echo;file %%j>>New.txt&echo; 合并文件 %%j
  8.     )
  9.     echo;& echo 即将合并视频为New.mp4
  10. )
  11. pause
  12. rem 合并文件
  13. ffmpeg -f concat -i New.txt -vcodec copy -acodec copy %~dp0New.mp4
  14.     cls&echo 新文件保存路径%~dp0New.mp4&echo;
  15. pause&exit /b
  16. @end

  17. var str=WScript.StdIn.ReadAll().split('\n')
  18. str.sort(function(a,b){return a.length - b.length;})
  19. WScript.Echo(str.join('\n'))
复制代码
发表于 2023-11-18 15:40:05 | 显示全部楼层
把 New 都改成 %New%
Set "New=%~n0"
好像是这样
发表于 2023-11-19 14:09:05 | 显示全部楼层
  1. @if(0)==(0) echo off
  2. chcp 65001 >nul
  3. cd /d "%~dp0"
  4. for /d %%d in (*) do (
  5.         pushd "%%d"
  6.         (for /f "delims=" %%j in ('dir /b/a-d/on "*.mp4"^|cscript -nologo -e:jscript "%~f0"') do (
  7.                 echo;file %%j
  8.         ))>New.txt
  9.         ffmpeg -f concat -safe 0 -i New.txt -vcodec copy -acodec copy "%~dp0%%~nxd.mp4"
  10.         del New.txt
  11.         popd
  12. )
  13. pause & exit
  14. @end

  15. var str=WScript.StdIn.ReadAll().split('\n')
  16. str.sort(function(a,b){return a.length - b.length;})
  17. WScript.Echo(str.join('\n'))
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 07:42 , Processed in 0.016262 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表