разбор результата команды

Модератор: Модераторы разделов

Аватара пользователя
Serge Daniloff
Сообщения: 106
ОС: бубунту, sVista

разбор результата команды

Сообщение Serge Daniloff »

Пишеться программа для получения точек монтирования с опцией --bind, копаясь в man'ах я не нашел функций которые бы позволили напрямую получить таблицу смонтированных разделов, поэтому реши заюзать коммандную стороку:

GString *str;
char buff[2];

str = g_string_new("");
FILE *f = popen("mount | grep \"bind\"", "r");

while (fread(buff, 1, 1, f) != 0)
{
str = g_string_append(str, buff);
strcpy(buff, "");
}
g_print("%s", str->str);

Как разбирать выходной результат функции (str->str), т.к. непонятно деление на строки - символа \n или \r там не находиться - соответсвенно парсинг резултата становиться практически невозможным.
Или есть ли всё таки способ получить таблицу смонтированных разделов с помощью системных функций?

Спасибо.
A voyage into trance
Спасибо сказали:
Wegman
Сообщения: 89

Re: разбор результата команды

Сообщение Wegman »

А как же /usr/include/fstab.h
но сначала info fstab
Registered Linux user number 414635 Зарегистрироваться
Спасибо сказали:
Аватара пользователя
Uncle_Theodore
Сообщения: 3339
ОС: Slackware 12.2, ArchLinux 64

Re: разбор результата команды

Сообщение Uncle_Theodore »

А по-моему, проще /etc/mtab прочитать...
Спасибо сказали:
Аватара пользователя
Serge Daniloff
Сообщения: 106
ОС: бубунту, sVista

Re: разбор результата команды

Сообщение Serge Daniloff »

Uncle_Theodore писал(а):
25.02.2007 09:09
А по-моему, проще /etc/mtab прочитать...

То что надо!
Спасибо огромное!!!
A voyage into trance
Спасибо сказали:
v04bvs
Сообщения: 636
ОС: Debian GNU/Linux

Re: разбор результата команды

Сообщение v04bvs »

Linux-specific: /proc/mounts
Спасибо сказали:
Аватара пользователя
Serge Daniloff
Сообщения: 106
ОС: бубунту, sVista

Re: разбор результата команды

Сообщение Serge Daniloff »

Теперь ещё один трабл...
как прочитать строку из файла?
ofstream не катит-((
A voyage into trance
Спасибо сказали:
MedVed
Сообщения: 112

Re: разбор результата команды

Сообщение MedVed »

fopen/read?
МСВС 3.0/Linux Mandrake 8.0
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: разбор результата команды

Сообщение elide »

как прочитать строку из файла?
а-а-а-а-а-а. только не мой мозг.
man fgets
man fscanf
слава роботам!
Спасибо сказали:
Аватара пользователя
Serge Daniloff
Сообщения: 106
ОС: бубунту, sVista

Re: разбор результата команды

Сообщение Serge Daniloff »

Всё гениальное просто - man getline
A voyage into trance
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: разбор результата команды

Сообщение elide »

getline - GNU extension. ну и нафиг это надо если есть fgets?
слава роботам!
Спасибо сказали:
Аватара пользователя
oav
Бывший модератор
Сообщения: 296

Re: разбор результата команды

Сообщение oav »

[quote name='elide' post='345802' date='Feb 26 2007, в 20:26']
getline - GNU extension. ну и нафиг это надо если есть fgets?
[quote]
Я думаю имелось в виду std::getline - т.е. что ifstream катит ;)

[quote name='Serge Daniloff' post='344627' date='Feb 25 2007, в 13:48']
Теперь ещё один трабл...
как прочитать строку из файла?
ofstream не катит-((
[quote]
http://www.rsdn.ru/Forum/Info.aspx?name=FA...fstream.getline
[quote]
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: разбор результата команды

Сообщение elide »

oav
ну там было написано "man getline". а мне как-то не попадались маны по std::*...
слава роботам!
Спасибо сказали: