Извлечение символов после определенного текста

Я извлекаю страницу с сайта с помощью команды cURL.

curl "www.google.com" -s | w3m -dump -T text/html > foo.txt 

Команда w3m выводит HTML-страницу в гораздо более удобном формате, так что теперь манипуляция строк в foo.txt проще.

Теперь у меня есть некоторые значения в моем foo.txt которые извлекаются, как foo.txt ниже.

 Assistant director at Hollywood studios Student at University of Texas at Arlington 

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

 Hollywood Studios University of Texas at Arlington 

3 Solutions collect form web for “Извлечение символов после определенного текста”

Другой вариант – передать текст в grep и cut:

 grep -o ' at .*$' foo.txt | cut -c5- 

Это позволит извлечь самую длинную строку для каждой строки, которая начинается с 'at'. Затем срез будет обрезать ведущий «at».

Другой способ – заменить первое вхождение at вкладке, так что теперь у вас есть файл с разделителями табуляции, и вы можете использовать awk правильно:

 $ sed 's/ at /\t/' foo.txt | awk -F'\t' '{print $1" :: "$2}' Assistant director :: Hollywood studios Student :: University of Texas at Arlington 

Или, то же самое в Perl:

 $ perl -ne '/(.+?) at (.+)/; print "$1 :: $2\n"' foo.txt 

или даже

 $ perl -F'\sat\s' -lane 'print "$F[0] :: @F[1..$#F]"' foo.txt 

Вы можете использовать at качестве разделителя столбцов в awk . Следующее должно работать:

 awk -F'at' '{print $2}' foo.txt 
  • base10 не работает
  • Zsh скрипт, как конкатенировать элементы массива со строкой
  • Скрипт для проверки наличия и копирования файла
  • whiptail и вызов внешних скриптов
  • Как выполнить базовые вычисления в сценарии оболочки?
  • Плагин мониторинга отправителя для Nagios
  • Что такое «команда» на bash?
  • Почему полный путь к / usr / bin / time влияет на вывод?
  • Нужен сценарий оболочки для преобразования CSV в формат Apache httpd
  • команда для подсчета числа активных заданий cron в crontabs
  • Как выбрать уникальные значения массива?
  • Interesting Posts

    Могу ли я удалить пакеты * -dev, если я не компилирую приложения из исходного кода?

    Как позволить Qemu автоматически выбрать прослушивающий порт для Spice?

    Что изменилось между ядрами 3.2 и 3.9, которые влияют на MiniDLNA?

    Запуск для цикла с двумя переменными?

    Служба Systemd запускает только один из двух процессов, но только при перезагрузке ОС

    Настройка whonix с шлюзом и рабочей станцией на двух отдельных хостах

    Каков самый быстрый способ запуска скрипта?

    Свежая сборка и установка бизона с пользовательским –prefix не ищет его данные, где я ожидаю

    Документация KeepAliveD

    Почтовый вывод stderr, log stderr + stdout в cron

    Я хочу добавить «n» строк из файла (скажем, file1) в другой файл под «n» вхождения строки в другой файл, чтобы

    Разделение stdin на разные выходы в bash

    Полезно ли настроить RAID0 на ноутбуке?

    Команда Linux – mount возвращает ноль / 0, но не работает

    Linux Mint 17.1 не будет загружаться после обновления BIOS

    Linux и Unix - лучшая ОС в мире.