У меня есть много (думаю, 17000) HTML-файлов, которые содержат ссылки. Каждый HTML-файл может содержать много ссылок, но все они ссылаются на одно и то же видео mp4, но в разных разрешениях. Я хочу выделить только ссылку с самым высоким разрешением, т.е. если есть ссылка на 720, 1080 или 1440, я хочу ссылку для 1440 и не беспокоиться с другими. Максимальное разрешение варьируется, поэтому я не могу просто жестко кодировать 1440 (максимальное разрешение в одном HTML-файле может быть 720, в другом, например, 1440).
Содержимое html-файлов имеет размер от 2 до 80 Кбайт и содержит повторяющееся содержимое, имеющее такую структуру, иногда в одной строке, иногда занимающее несколько строк
{"url":"https://localhost/676/hg66333/56354446353.mp4?user=893668f5-8fab-4916-9697-f45aee61aa01",
uploadedBy="fdb778f8-c347-4c28-90f4-d8be4b4a20f0",
owner="3ba62dba-8fb1-468d-8349-2e42a5330785",video="1024p",
group="a4307f09-4804-4802-9ba4-8e8eaf3d3439"},
{"url":"https://localhost/676/hg66333/56354446384.mp4?user=893668f5-8fab-4916-9697-f45aee61aa01",
uploadedBy="fdb778f8-c347-4c28-90f4-d8be4b4a20f0",
owner="3ba62dba-8fb1-468d-8349-2e42a5330785",
video="720p", group="a4307f09-4804-4802-9ba4-8e8eaf3d3439"}
Что я хочу от grep это просто
https://localhost/676/hg66333/56354446353.mp4?user=893668f5-8fab-4916-9697-f45aee61aa01
И НЕ (так как это более низкое разрешение, самое высокое разрешение в одном файле i 1024, более низкое разрешение 720)
https://localhost/676/hg66333/56354446384.mp4?user=893668f5-8fab-4916-9697-f45aee61aa01
Я просто не могу найти решение, используя grep -oh и '\ "url \": \ "https://localhost[^"]*
Я думаю, что мне нужно сделать, чтобы получить все URL, и видео =, отсортировать по URL, затем видео с наивысшего к низшему, и взять верхний, но ..... Я понятия не имею, и теперь я просто шарить, пытаясь найти что-то, что я могу найти в Google, и меняя его.
Может кто-нибудь помочь?
О, mp4 всегда появляется раньше, чем качество видео
Я использую Darwin MacBook-Pro.local 18.6.0 Darwin Kernel Версия 18.6.0: Четверг, 25 23:49:07 PDT 2019; root: xnu-4903.261.4 ~ 4 / RELEASE_X86_64 x86_64