Передача исполняемому файлу параметров, перечисленных в текстовом файле
Всем привет!
Имеется список ссылок в текстовом файле (каждая ссылка - URL), по одной на строку. Нужно обработать их все, передавая по одной за раз в качестве параметра командной строки исполняемому файлу. Это нужно для wget, который работает так:
Код:
wget URL {другие параметры}
У wget есть параметр -i input.txt, который должен обрабатывать список ссылок из файла, но почему-то он не срабатывает - пишет, что URLы не найдены... Хотя эти же URLы по одному в командной строке распознает. Поэтому ищу обxодной путь. В итоге нужен пакетный файл, который по одному обработает все ссылки из текстового файла.
Все ссылки имеют вид
Код:
http://oszone.net/print/ХХХХ
Спасибо.
|
Petya V4sechkin |
18-02-2009 14:24 1042239 |
Vadikan, как-то так:
Код:
@Echo Off
SetLocal EnableExtensions
Set FN=input.txt
For /F "Delims=" %%I In (%FN%) Do wget %%I {другие параметры}
если батнику имя файла передается параметром, то так:
Код:
@Echo Off
SetLocal EnableExtensions
For /F "Delims=" %%I In (%1) Do wget %%I {другие параметры}
|
Petya V4sechkin, спасибо!
:oszone:
|
Подниму свою тему восьмилетней давности :) Потому что это фактически продолжение той же задачи.
Есть скрипт, который скачивает содержимое потоковых плейлистов локально
Код:
@Echo Off
SetLocal EnableExtensions
Set FN=playlists.txt
For /F "Delims=" %%I In (%FN%) Do youtube-dl --extract-audio --audio-format mp3 %%I
В файле playlists.txt в каждой строке ссылки вида:
Код:
https://somesite.com/<username>/sets/nn-n
где nn-n принимает значения 17-1, 10-1, 9-1 и т.п.
Сейчас все файлы падают в одну папку (со скриптом), а надо для каждого плейлиста - в свою, с именем nn-n. Поможете? :)
|
Попробуйте так (не проверялось):
Скрытый текст
Код:
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFile=playlists.txt
if exist "%sSourceFile%" (
for /f "usebackq delims=" %%i in ("%sSourceFile%") do (
for /f "usebackq delims=" %%j in ('%%i') do (
if not exist "%%~nxj" md "%%~nxj"
pushd "%%~nxj" && (
"youtube-dl.exe" --extract-audio --audio-format mp3 %%i
popd
)
)
)
) else (
echo Can't find source file [%sSourceFile%].
exit /b 1
)
endlocal
exit /b 0
|
Iska, отлично, годится! Только т.к. утилита уровнем выше лежит.
|
Цитата:
Цитата Vadikan
Только
т.к. утилита уровнем выше лежит. »
|
Я думал, он у Вас где-нибудь в PATH, или же в оригинальном пакетном файле обращение будет идти по полному пути :(. Если youtube-dl.exe расположен относительно самого пакетного файла, тогда лучше наподобие:
Код:
"%~dp0youtube-dl.exe" …
|
Время: 08:51.
© OSzone.net 2001-