@SaddledSharp
Кодер. Увлекаюсь информационной безопасностью.

Как получить вывод консоли?

Всем привет! Допустим, я хочу ввести команду:
system("cd C:/");
И мне нужно получить вывод от этой команды, например в ответ на эту команду мне выводит:
sh: 1: cd: can't cd to C:/
И мне нужно этот вывод занести в переменную и дальше обработать, как такое реализовать?

Дополнено: код примерно должен выглядить так:
system("cd C:/");
result = // Вывод system()
if (result == "sh: 1: cd: can't cd to C:/") {
cout << "None" << endl;
}
else {
cout << "Yes" << endl;
}
  • Вопрос задан
  • 100 просмотров
Пригласить эксперта
Ответы на вопрос 1
@lorc
к сожалению с system() у вас так не получится. Вам нужно пойти длинным и сложным путем - через fork, pipe, dup и execve.

В принципе вот тут расписано более-менее.

Возможно есть библиотека, которая все это инкапсулирует и предоставляет удобный интерфейс. Но я такой не встречал.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы