优秀的编程知识分享平台

网站首页 > 技术文章 正文

听说有一门技术叫windows批处理(bat),你知道吗?

nanyue 2024-08-22 17:36:25 技术文章 6 ℃

听说有一门技术叫windows批处理(bat),请问它有什么现实用途?


作为普通群众,我电脑里有一个BAT文件,编辑视频用的@echo off & setlocal enabledelayedexpansion

rem ===================需手动设置===================

rem 设定片头片尾长度,格式为 HH:mm:ss.fff

set "s1=00:00:07.0"

set "s2=00:00:00.0"

rem ================================================

for /f "tokens=1-4delims=:." %%a in ("%s2%") do (

set /a "t2=(1%%a %% 100 *3600 + 1%%b %% 100 * 60 + 1%%c %% 100) * 1000 + 1%%d %% 1000"

)

md myvideo 2>nul

for %%i in (*.avi *.mkv *.mp4 *.flv) do (

for /f "tokens=2-5delims=:., " %%a in ('ffmpeg -i "%%i" 2^>^&1 ^| find "Duration:"') do (

set /a "t=(1%%a%%100*3600+1%%b%%100*60+1%%c%%100)*1000+1%%d0%%1000,t-=t2,ms=t%%1000,t/=1000"

set /a h=t/3600,m=t%%3600/60,s=t%%60,h+=100,m+=100,s+=100,ms+=1000

set "t=!h:~1!:!m:~1!:!s:~1!.!ms:~1!"

ffmpeg -ss !s1! -to !t! -accurate_seek -i "%%i" -c copy -avoid_negative_ts 1 "myvideo\%%i" -y

)

)

pause

复制到TXT文本,改后缀为bat,同文件夹下要有ffmpeg

以下是二位网友对此的看法

网友一:这个拿bat,ps1或者py都能用,本质上不过是自动调用ffmpeg嘛。我也写过一个类似的,在pwsh7的profile里定义一个调用image magick来批量处理照片的函数,这么做的好处是profile会在pwsh启动时自动加载,我只需要打出函数别名就可以自动调用

网友二:ffmpeg不加到path里吗,还要到处复制

最近发表
标签列表