Показать полную графическую версию : Поиск и копирование строк в текстовом файле
Есть текстовый файл с прямыми ссылками на скачивание различных zip, mp3, epub, pdf, rtf, brl файлов. Необходимо найти и скопировать строки ссылок с данными расширениями, в шесть отдельных текстовых файлов:zip.txt, mp3.txt и т. д.
Есть текстовый файл »
сюда в архиве
сюда в архиве »
Да рад бы, но файл не мой, навряд ли владелец разрешит передачу третьей стороне.
Iwest,
т.е. если в тексте будет любая (одна или более) строка (ссылка) содержащая в себе, например, zip, то копировать их в новосозданный файл zip.txt?
а если в строке будет несколько поисковых слов, zip и mp3 сразу - что тогда? И какая кодировка файла с ссылками. Понятно теперь для чего нужно видеть и файл и содержимое?
навряд ли владелец разрешит »
Скажите владельцу, если не покажет файл - стоимость 100$, покажет - бесплатно, заодно проверите его :biggrin:
«И концы строк! И концы строк!» :).
megaloman
18-10-2017, 12:22
alpap, плохо, что нет текстового файла, но если там строки типа
https://aldebaran.ru/author/aristotel_1/kniga_metafizika/download.fb2.zip
то можно построчно прочесть этот файл, каждую строку рассматривать как путь к файлу в сети, выделить расширение и поместить эту строку в нужный выходной текстовый файл в зависимости от расширения.
В частности, приведена ссылка на zip- файл. То, что там фигурирует fb2 в данной постановке несущественно.
Трудно сказать, будут ли косяки, если написать батник и если в ссылке будут хитрые символы.
Iwest, Вы бы могли хотя бы несколько строк из файла привести, чтоб было с чем работать.
Трудно сказать, будут ли косяки, если написать батник и если в ссылке будут хитрые символы. »
Обязательно будут.
https://ru.wikipedia.org/wiki/%D0%A1%D0%B0%D0%BB%D1%8E%D1%82-7
Я для себя достаточно давно сделал вывод, что тут лучше всего «заходит» PowerShell, не в последнюю очередь из-за возможности использования класса Uri.
Вы бы могли хотя бы несколько строк из файла привести, чтоб было с чем работать. »
Строки такого содержания:
https://xxxxxxxx-x.xxxxxxxx.com/files/xxxxx_xxxxxxxxx/xx/x_X_201710.mp3.zip
https://xxxxxxxx-x.xxxxxxxx.com/files/xxxxx_xxxxxxxxx/xx/x_x-xxx_x_201708.brl
https://xxxxxxxx-x.xxxxxxxx.com/files/xxxxx_xxxxxxxxx/xx/x_X_201710_01.mp3
https://xxxxxxxx-x.xxxxxxxx.com/files/xxxxx_xxxxxxxxx/xx/x_X_201709.rtf.zip
https://xxxxxxxx-x.xxxxxxxx.com/files/xxxxx_xxxxxxxxx/xx/x_X_201709_00.rtf
https://xxxxxxxx-x.xxxxxxxx.com/files/xxxxx_xxxxxxxxx/xx/x_X_201707.epub
https://xxxxxxxx-x.xxxxxxxx.com/files/xxxxx_xxxxxxxxx/xx/x_X_201710.pdf
а такой вариант не вариант?
findstr /r "mp3$" "текстовый файл.txt" >> mp3.txt
ну и по строке на каждое расширение.
для приведенного примера такая команда выдергивает только строку "https://xxxxxxxx-x.xxxxxxxx.com/file..._201710_01.mp3" и пихает ее в "mp3.txt". Вроде бы как-то так. Или я что-то неправильно понял?
Elven, всё так, только ещё точку в шаблон нужно добавить — «\.mp3$». Ну, а в остальном — уже говорилось: кодировка, BOM, концы строк.
Iska, а зачем точку экранировать?
Сам понял, туплю.
findstr /r "\.mp3$" "текстовый файл.txt" >> mp3.txt
Все получилось. Спасибо.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.