X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Хелп по bash-shell, мини помощь
dota
dota
Topic Starter сообщение 30.6.2013, 23:51; Ответить: dota
Сообщение #1


Топовый постер
*******


Группа: Active User
Сообщений: 4529
Регистрация: 1.10.2010
Из: СССР
Поблагодарили: 2575 раз
Репутация:   576  


Знатоки, подскажите плз, нужно подать небольшую команду на bash-shell.

Есть текст с которого надо выдрать http ссылки.
Пример:
Текст текст текст <a href="http://site1.ru">анкор</a> текст <a href="http://site2.ru">анкор</a> текст текст <a href="http://site3.ru">анкор</a>
текст <a href="http://site4.ru">анкор</a> текст текст <a href="http://site5.ru">анкор</a>


Проблема в том что grep в строке видит только последнюю ссылку, а первые пропускает.

На выходе что бы получился список ссылок, всех.


--------------------
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
anchous
anchous
сообщение 1.7.2013, 0:04; Ответить: anchous
Сообщение #2


Йеребатан Абырвалг
*******

Группа: Super Moderator
Сообщений: 8000
Регистрация: 12.4.2011
Из: СССР
Поблагодарили: 4520 раз
Репутация:   418  


дык надо листинг давать через cat
cat файло | grep выражение


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
dota
dota
Topic Starter сообщение 1.7.2013, 1:06; Ответить: dota
Сообщение #3


Топовый постер
*******


Группа: Active User
Сообщений: 4529
Регистрация: 1.10.2010
Из: СССР
Поблагодарили: 2575 раз
Репутация:   576  


anchous, grep выводит строки где есть к примеру http, потом из этих строк надо вытаскивать ссылки.
Какой командой вытаскивать? Я пробую sed, но она видит только последнюю ссылку в строке.

__________________________________________

В общем пришлось добавлять перед ссылкой изначально новую строку.

Вот аткая команда получилась, может кому понадобится. Вытаскивает ссылки из текста.

cat aaa.txt | sed -e "s/\(http\)/\nhttp/g" | sed -e "/http/s/\".*$//g" | grep http

Сообщение отредактировал dota - 1.7.2013, 1:07


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
RageLT
RageLT
сообщение 1.7.2013, 13:09; Ответить: RageLT
Сообщение #4


Участник
***

Группа: User
Сообщений: 145
Регистрация: 1.10.2009
Поблагодарили: 52 раза
Репутация:   14  


можно проще...
egrep -o "(http(s)?://){1}[^'\"]+" aaa.txt


--------------------
Велосипед и жену не доверяй никому!
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


 



RSS Текстовая версия Сейчас: 16.12.2017, 19:16
Дизайн