ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Безопасность и Уязвимости > Безопасность > *nix
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

BASH
  #1261  
Старый 19.10.2009, 23:12
cupper
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
Провел на форуме:
1180737

Репутация: 180


По умолчанию BASH

чета немогу в нете найти это:
как в баше легко работать со строками ?

к примеру есть строка
<какаянить хрень>текст1:текст2<опять хрень>
Нужно из нее извлечь подстроки в переменны
переменная1=текст1
переменная2=текст2

Кострукции со всякими там dd, sed уж больно хитроЫебаными получаются и даже близко немогу подобраться к тому что надо.
Через ${строка#подстрока} тоже както все хреново выглядит.

Нужна всегото функция которая будет копировать с n до m сомволов
и еще одна для поиска ключеного символа :

чтото типо этого
a=найти_позицию_символа(СТР КА,ПОДСТРОКА)
переменная1=скопирова(СТРО А, С_ЭТОЙ_ПОЗИЦИИ, ДО_ЭТО_ПОЗИЦИИ)

или баш такого вообще не умеет ?

PS. вот это самое простой что я смог накатать
Код:
	line=`echo $find_string | dd bs=1 skip=7 count=$((${#find_string}-8-8))` #вырезаем искому серединку
	len=`expr index "$line" :` # номер позиции ключевого символа
	echo ${line:0:$((len-1))} #вывод парвой части
	size=${#line}
	echo ${line:$((len+1)):size} #вывод второй части
боюсь я уже через пару дней с трудом смогу понять то что самже и написал проще надо, прощеее

Последний раз редактировалось cupper; 19.10.2009 в 23:39..
 
Ответить с цитированием

  #1262  
Старый 20.10.2009, 10:27
farex
Banned
Регистрация: 11.03.2009
Сообщений: 214
Провел на форуме:
914766

Репутация: 317
По умолчанию

Цитата:
Нужна всегото функция которая будет копировать с n до m сомволов
и еще одна для поиска ключеного символа :
Хотел было посоветовать тебе grep и sed и если тебе нужно конкректно это то: не чем не могу помочь...
Зы., было бы самому интерестно посмотреть решения., если найдешь запости сюда, или кинь в личку.
 
Ответить с цитированием

  #1263  
Старый 20.10.2009, 13:41
cupper
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
Провел на форуме:
1180737

Репутация: 180


По умолчанию

вот так сделал
Код:
#line=`echo $find_string | dd bs=1 skip=7 count=$((${#find_string}-8-8))` результат один итотже, кому как нравится
 	line=`expr substr $find_string 8 $((${#find_string}-16))` #выдераем нужную серединку
 	len=`expr index "$line" :`       # находи позицию разделителя
 	table_db=${line:0:$((len-1))} # берем первую половинку
 	table_name=${line:len}         # берем правую половинку
 	echo "$table_db | $table_name"
пример:
Цитата:
вход
find_string="<title>information_schema:CHARACTER_S ETS</title>"
ВЫход:
information_schema | CHARACTER_SETS

Последний раз редактировалось cupper; 20.10.2009 в 13:46..
 
Ответить с цитированием

  #1264  
Старый 20.10.2009, 16:03
farex
Banned
Регистрация: 11.03.2009
Сообщений: 214
Провел на форуме:
914766

Репутация: 317
По умолчанию

Код:
bla=$(cat page | grep -o " title>.*</title" | sed ' s/title//; s/\//; s/\<//; s/\//; s/title//')
echo $bla
information_schema:CHARACTER_SETS
Так не проще?
Хотя с find_string тоже норм...
А вообще если вы пишити скрипт для выдерания тайтлов то можно воспользоваться curl
Код:
bla=$(curl -s bla/index.html | grep -o " title>.*</title" | sed ' s/title//; s/\//; s/\<//; s/\//; s/title//')
echo $bla
information_schema:CHARACTER_SETS
В данном примере будет выводится все что находится между тайтломи, будь то character set или admin (((

Последний раз редактировалось farex; 20.10.2009 в 16:14..
 
Ответить с цитированием

  #1265  
Старый 20.10.2009, 17:24
cupper
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
Провел на форуме:
1180737

Репутация: 180


По умолчанию

Цитата:
А вообще если вы пишите скрипт для выдирания тайтлов то можно воспользоваться curl
не для выдирания тайтлов, искомая строка может быть где угодно, это к сожалению токо вручную сначала смотреть где находить строка, каки есть рядом уникальные значения по ним уже выдирать строку.

find_string как раз и получается после того как грепаю вывод curl'a

если юзать sed конечно код уменьшиться, но синтаксис у него адский, не осилил, притом модифицировать придется под каждый конкретный случай вывода curl, и sed править сложнее чем проста отсчитать количество удаляемых символов с лева и права, для меня покрайней мере.
 
Ответить с цитированием

  #1266  
Старый 20.10.2009, 17:34
farex
Banned
Регистрация: 11.03.2009
Сообщений: 214
Провел на форуме:
914766

Репутация: 317
По умолчанию

хм, а по словарю не проще будет грепать..?
PS: А sed изучай по маленькку, он те еще не раз пригодится
ну и awk тож будет полездно.(

Последний раз редактировалось farex; 20.10.2009 в 18:23..
 
Ответить с цитированием

  #1267  
Старый 20.10.2009, 18:48
Validol
Участник форума
Регистрация: 15.12.2006
Сообщений: 212
Провел на форуме:
587761

Репутация: 144
По умолчанию

Уважаемые ачатовцы...

Пришла мне по почте ubuntu 9.04, которую ранее заказывал.
Сейчас уже подготовил себя к переходу на эту ОС.
Единственная проблема, которая возникла:

Драйвера.. Ставлю ubuntu на ноутбук. А там соответственно горячие клавиши присутствуют. Драйверов под linux на официальном сайте разработчиков я не нашел. Как быть?

Доп. информация:
Модель ноутбука: http://www.3dnews.ru/mobile/asus_f3jp_samsung_r55 - Asus F3JP
Необходимые драйвера: ATK HotKey, Asus Splendid.

Последний раз редактировалось zythar; 21.10.2009 в 16:30..
 
Ответить с цитированием

  #1268  
Старый 20.10.2009, 19:44
cupper
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
Провел на форуме:
1180737

Репутация: 180


По умолчанию

Цитата:
хм, а по словарю не проще будет грепать..?
эм, че за словарь ? непонимаю про что ты.
 
Ответить с цитированием

  #1269  
Старый 20.10.2009, 20:32
farex
Banned
Регистрация: 11.03.2009
Сообщений: 214
Провел на форуме:
914766

Репутация: 317
По умолчанию

я имею введу:
Славари дефолтных таблиц в БД.
Можно составить словарь например MSQL и сравнивать строки по нему, тоесть если попадается какая либо табла из словаря., то скрипт грепает строки из исходника html страници ..итд...
Это легко осуществимо по средством bash и ИМХО это самый простой способ.
 
Ответить с цитированием

  #1270  
Старый 20.10.2009, 20:33
cupper
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
Провел на форуме:
1180737

Репутация: 180


По умолчанию

Понятно про что ты, но у меня другая задача :)

Последний раз редактировалось zythar; 21.10.2009 в 16:24..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Wi-Fi, BT] Задай вопрос - получи ответ! Alexsize Беспроводные технологии/WPAN/WLAN 2564 06.04.2026 23:31
Proxy FAQ foreva Чужие Статьи 12 04.01.2008 12:15
Вопрос по поводу античатовского снифера. Заранее большое спасибо за ответ. -SX- Болталка 5 23.10.2006 20:20
ЕсТь ВоПрос Guma Чаты 4 26.10.2005 21:48



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ