Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вопрос по execl 
:(
    Опции темы
mikee
Дата 12.3.2011, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 12.3.2011

Репутация: нет
Всего: нет



мне нужно выполнить вот это egrep -o "\b\w{argv[2]}\b" argv[1]
для это 
Код
#include <unistd.h>
#include <stdlib.h>
int main(int argc,char* argv[])
{
execl("/usr/bin/egrep","egrep","-o","\"\\b\\w{",argv[2],"}\\b\"",argv[1],(char*)0);
exit(0);
}

но почему то не работает
PM MAIL   Вверх
borisbn
Дата 12.3.2011, 17:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: нет
Всего: 135



смотри, у тебя получается, что execl формирует такую строку
egrep -o "\b\w{ x,y }\b"
а должна быть такая
egrep -o "\b\w{x,y}\b"
т.е. между фигурной скобкой и argv[2] вставляется пробел, а такое выражение и не должно работать.

как избавиться:
std::string regStr = std::string( "\"\\b\\w{" ) + argv[2] + "}\\b\"";
а потом подавай её execl'ю
Код

execl("/usr/bin/egrep","egrep","-o", regStr.c_str(), argv[1],(char*)0);



Это сообщение отредактировал(а) borisbn - 12.3.2011, 21:37


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
TIT
Дата 14.3.2011, 09:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 49
Регистрация: 4.4.2010

Репутация: нет
Всего: 3



А лучше воспользуйся средствами Си, а не внешними программами.
Например, http://pubs.opengroup.org/onlinepubs/00790...sh/regex.h.html.
PM MAIL WWW ICQ Skype GTalk Jabber MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0619 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.