【发布时间】:2021-05-26 19:35:57
【问题描述】:
我对脚本完全陌生。下面是批处理文件中编写的代码示例:
@ECHO OFF
ECHO ----------------------------------------------------------------------------------------------------
SET /P URL="[Enter video URL] "
ECHO ----------------------------------------------------------------------------------------------------
goto formatList
:formatList
ECHO.
ECHO ----------------------------------------------------------------------------------------------------
youtube-dl -F %URL%
ECHO ----------------------------------------------------------------------------------------------------
goto selection
:selection
ECHO.
ECHO ----------------------------------------------------------------------------------------------------
ECHO a) Video + Audio
ECHO b) Single format (Audio only / Video only)
ECHO.
SET /P option="Select option: "
if %option% == a (goto download)
if %option% == b (goto downloadSingle)
ECHO.
ECHO Unknown value
ECHO ----------------------------------------------------------------------------------------------------
goto selection
:download
ECHO ----------------------------------------------------------------------------------------------------
ECHO.
ECHO ----------------------------------------------------------------------------------------------------
SET /P video="Select video format: "
SET /P audio="Select audio format: "
SET /P location="Specify download location: "
ECHO.
youtube-dl --write-sub --embed-subs -o %%location%%/%%(title)s.%%(ext)s -f %video%+%audio% -i --ignore-config --hls-prefer-native %URL%
ECHO ----------------------------------------------------------------------------------------------------
ECHO.
PAUSE
EXIT
:downloadSingle
ECHO ----------------------------------------------------------------------------------------------------
ECHO.
ECHO ----------------------------------------------------------------------------------------------------
SET /P format="Select format: "
ECHO.
youtube-dl --write-sub --embed-subs -o %%location%%/%%(title)s.%%(ext)s -f %%format%% -i --ignore-config --hls-prefer-native %URL%
ECHO ----------------------------------------------------------------------------------------------------
ECHO.
PAUSE
EXIT
如何不必通过 'SET /P location="Specify download location:"' 键入文件夹路径的地址,而是让批处理文件打开文件浏览器以选择一个文件夹并将其设置在 %location%变量。
非常感谢任何形式的帮助。
【问题讨论】:
-
在纯批处理中最简单的方法是打开 explorer.exe 并使用 set /P 允许用户将文件拖放到控制台中以分配给变量。
-
您可以使用另一种脚本语言来帮助您,PowerShell 和 Windows Scripting Host 都包含在 Windows 中,并且都可以从批处理文件中运行。但是对于你想要完成的任务,我可能会建议你去掉中间人,(删除批处理文件),直接在
.JS.PS或.VBS中完成。跨度> -
以后请考虑提供minimal reproducible example。我强调最小。您的大部分代码与您的问题无关。
-
我很抱歉。指出的要点。
标签: batch-file directory