Извлечь URL-адрес из определенного шаблона (Google Alert)

Кредит Bruno9779 за первоначальный проект этого ответа. Не уверен, почему он был самоудален, так как это был довольно хороший ответ:

Вы практически все сделали сами:

destinationDir="/destination/path/here/"
if cd "$destinationDir"; then
    for file in *.csv;  do
        # run executable on "$file" and output 
        executable "$file" standard.csv > "${destinationDir}/output_${file}.csv"
    done
else
    echo "Unable to change to working directory."
fi

Только не забывайте заключать в кавычки имена файлов с переменными.

1
07.02.2017, 23:09
4 ответа

Вопрос решен с помощью предложения Ralph Rönnquist

cat INBOX | sed -z -e 's/=\r\?\n//g' | \ sed -e 's/.*u0026url=3D//;t a;d;:a' -e 's/\u\u0026ct=3D.*//' > output.txt

Вычисление занимает много времени, но он правильно извлекает URL.

Большое спасибо всем за помощь!

0
27.01.2020, 23:46

вы можете попробовать эту команду

awk -F"3D" '{print $4}' input.txt | sed "s/\\\u.*//"
0
27.01.2020, 23:46

Для обработки можно использовать командную строку, подобную следующей:

cat INBOX | sed -z -e 's/=\n//g' | \
   sed -e 's/.*u0026url=3D//;t a;d;:a' -e 's/\\u0026ct=3D.*//'

Первый шаг sed предназначен для соединения строк, заканчивающихся на "=" с последующей строкой, и, таким образом, в частности, для создания однострочных интересных строк.

Второй шаг sed, во-первых, сокращает интересные строки, удаляя их головную часть, и отбрасывает все строки без этой головной части, а во-вторых, удаляет хвостовые части целевых строк.

1
27.01.2020, 23:46

Я не уверен, как вы получаете оповещения, но я приведу пример того, как это сделать, если бы оповещения были в простом текстовом файле. Я бы сначала разобрался с "=", используя tr, а затем использовал Pearl lookarounds с grep следующим образом ...

cat input.txt | tr --delete '=\n'| grep -oP '(?<=url3D).*?(?=\\u0026)' input.txt

Вывод по вашему примеру:

http://abcnews.go.com/US/wireStory/judge-orders-forfeiture-cartel-money-laundering-case-44765120
0
27.01.2020, 23:46

Теги

Похожие вопросы