![]() |
Сопоставить ссылки рядом, между ними установить символ.
Здравствуйте, решение нужно на BAT или на powershell.Есть два списка ссылок в txt файлах old.txt и new.txt (каждая ссылка с новой строки). Необходимо создать файл result.txt, в котором будут сопоставлены ссылки из этих двух текстовых файлов. Сопоставлять нужно по имени файла, игнорируя расширение, в конце каждой ссылки (если имя файла (игнорируя расширение) совпадает, то ссылка сопоставляется). Сопоставлять нужно через символ " | " ( до и после этого символа пробел ). result.txt должен получиться такого формата:
ссылка из old.txt | ссылка new.txt, совпадающая по имени файла (игнорируя расширение) c ссылкой old.txt Если ссылки из old.txt нету в new.txt, то ее должно не быть в результирующем файле. В old.txt может быть несколько ссылок с одним и тем же именем файла, каждой из них нужно сопоставить соответствующую ссылку из файла new.txt (если она есть). В new.txt, совпадающих ссылок по имени файла точно нет. Расширение в имени файла нужно игнорировать, т.е. сопоставление идет только по имени файла без расширения.. к примеру ссылка с именем файла "111re.avi" сопоставится с ссылкой с именем файла "111re.mp4" Пример: файл old.txt Код:
https://k2s.cc/file/uufyfidu/0498start.avi Код:
https://k2s.cc/file/dfgksdfdf/start765.mp4 Код:
https://k2s.cc/file/uufyfidu/0498start.avi | https://k2s.cc/file/jgmgjyh/0498start.mp4 |
Цитата:
Цитата:
Код:
https://k2s.cc/file/uufyfidu/0498start.avi Код:
https://k2s.cc/file/uufyfidu/0498start.avi | https://k2s.cc/file/jgmgjyh/0498start.mp4 А так — пробуйте: Скрытый текст
Код:
$sOldFile = 'C:\Мои проекты\0241\old.txt' |
Спасибо, работает. Да, скрипта не было, результирующий файл руками составлял и ошибся :(
|
Этот вариант скрипта основной, еще нужно дополнительный, все точно также, только нужно, чтобы при сопоставлении, в имени файла игнорировался символ земли _
Такие символы встречаются только в old.txt. Пример: old.txt Код:
https://k2s.cc/file/uufyfidu/0498_start.avi Код:
https://k2s.cc/file/3434w/0498start.mp4 Код:
https://k2s.cc/file/uufyfidu/0498_start.avi | https://k2s.cc/file/3434w/0498start.mp4 |
Цитата:
Скрытый текст
Код:
$sOldFile = 'C:\Мои проекты\0241\old.txt' Цитата:
|
Iska, спасибо, работает все и быстро обрабатывает много ссылок :)
|
Здравствуйте, спустя 4 года потребовалось обновление скрипта :) может кто нибудь сможет помочь исправить?
Теперь файлов типа new txt много (old.txt так и остался один). А также при сопоставлении, игнорировать знак земли _ в имени файла нужно как в old.txt как и в new.txt. Во всех файлах типа new.txt не будет ссылок с повторяющимися именами файлов.. (не то, что в каждом, а прям во всех.. если склеить все эти файлы, не будет одинаковых имён в ссылках). Пример: old.txt Код:
https://k2s.cc/file/uufuhfdsidu/0498_start.mp4 Код:
https://k2s.cc/file/uu11111du/0498start.mp4 Код:
https://yandex.ru/file/uu7654443u/0498start_m.jpg Код:
https://k2s.cc/file/uufuhfdsidu/0498_start.mp4 | https://k2s.cc/file/uu11111du/0498start.mp4 |
Время: 11:20. |
Время: 11:20.
© OSzone.net 2001-