LINUX.ORG.RU

Sed awk grep вывод нужного текста

 , , ,


0

1

Есть строчка <tr align=«RIGHT»><td>#1</td><td>10.11.10.12</td><td bgcolor=«#add8e6»>451.4 k (18.2%)</td><td>9.2 k (1.2%)</td><td>38.0 (8.1%)</td><td>19.9 (5.6%)</td><td>26.7 m (0.1%)</td><td>33.3 m (0.1%)</td></tr> Как грепнуть строчку чтобы остался только текст 451.4 k Сейчас grep'ом grep -m1 '<td bgcolor=«#add8e6»>.*</td>' topten.html и он выводит полностью строчку данную выше.



Последнее исправление: cetjs2 (всего исправлений: 1)

echo '<tr align="RIGHT"><td>#1</td><td>10.11.10.12</td><td bgcolor="#add8e6">451.4 k (18.2%)</td><td>9.2 k (1.2%)</td><td>38.0 (8.1%)</td><td>19.9 (5.6%)</td><td>26.7 m (0.1%)</td><td>33.3 m (0.1%)</td></tr>' | sed 's/.*/451.4/'
451.4

Не благодари. Так я хочу сказать, что ты все делаешь не так, man разбор html.

anonymous
()
Ответ на: комментарий от anonymous

Строчка меняться будет))) не факт что там всегда это число)))))

cy4apa
() автор топика
Ответ на: комментарий от beastie

Класс)) Добавил выдергивание нужной строки%) Спасибо!

cy4apa
() автор топика
Ответ на: комментарий от cy4apa

| ruby -e 'require «nokogiri»; puts Nokogiri::HTML(STDIN.read ,nil, «UTF-8»).css(«tr td[3]»).first.content.split(" ")[0]'

sdio ★★★★★
()
Ответ на: комментарий от schizoid

если уж на то пошло, то:

... | sed -n '/#add8e6/s/<[^>]*>/ /gp' | awk '{print $3, $4}'

beastie ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.