Batch file 用于进行查询以与youtube dl一起使用的批处理文件
我想构建一个批处理程序来处理youtube dl,我想问一些问题(我认为应该是choice命令),并根据生成查询的答案,生成查询将由主youtube dl命令执行 例如:Batch file 用于进行查询以与youtube dl一起使用的批处理文件,batch-file,youtube-dl,Batch File,Youtube Dl,我想构建一个批处理程序来处理youtube dl,我想问一些问题(我认为应该是choice命令),并根据生成查询的答案,生成查询将由主youtube dl命令执行 例如: echo Do you want to extract audio from this clip? (y/n) echo Write subtitle file? (y/n) 并在最后这样做: youtube-dl -x --write-sub some link 我希望我是清楚的,英语不是我的第一语言。谢谢试试这个:
echo Do you want to extract audio from this clip? (y/n)
echo Write subtitle file? (y/n)
并在最后这样做:
youtube-dl -x --write-sub some link
我希望我是清楚的,英语不是我的第一语言。谢谢试试这个:
@echo off
setlocal
:Input
set opt1=
set opt2=
set /p opt1=Do you want to extract audio from this clip (y/n)
if not defined opt1 goto :Invalid
if .%opt1% EQU . goto :Invalid
echo %opt1%|findstr /i /r /c:"y" /c:"n">nul||goto :Invalid
set /p opt2=Write subtitle file (y/n)
if not defined opt2 goto :Invalid
if .%opt1% EQU . goto :Invalid
echo %opt2%|findstr /i /r /c:"y" /c:"n">nul||goto :Invalid
if /i %opt1% EQU Y set opts=-x
if /i %opt2% EQU Y set opts=%opts% --write-sub
echo youtube-dl %opts% some link
goto :eof
:Invalid
Echo You have entered an invalid option. Please enter only y or n
goto :Input
我删除了最后一行的echo,现在它可以工作了,谢谢。setlocal是什么意思?我对这一切都不熟悉…如何防止不回答问题、空字符串或除y和n之外的其他东西?