为何Windows批处理中youtube-dl提示'ytlink'不是有效URL?
解决批处理调用youtube-dl的URL错误问题
你碰到的这个错误很典型——问题出在变量引用的格式上。在Windows批处理脚本里,你定义了ytlink变量来存储用户输入的链接,但调用youtube-dl时直接写ytlink,系统会把它当成一个字面字符串,而不是你输入的实际链接,所以youtube-dl才会报错说这不是有效URL。
修正后的批处理代码
set /p ytlink="请输入YouTube视频链接:" youtube-dl -f "bestvideo[height<=1080]+bestaudio/best[height<=1080]" %ytlink% pause
关键修改点
把原来的ytlink改成%ytlink%——这是批处理里引用环境变量的标准格式,加上百分号后,系统才会把用户输入的链接值替换到命令里,youtube-dl就能正确识别目标视频了。
额外优化(可选)
如果担心用户输入的链接包含空格(虽然YouTube链接通常不会有,但通用场景下更稳妥),可以给变量加上双引号:
set /p ytlink="请输入YouTube视频链接:" youtube-dl -f "bestvideo[height<=1080]+bestaudio/best[height<=1080]" "%ytlink%" pause
这样即使链接里有特殊字符或空格,命令也能正确解析。
内容的提问来源于stack exchange,提问作者sub1996
相关产品推荐
相关产品推荐

