Как скопировать всё содержимое консоли в строку? | C++
Как скопировать всё содержимое терминала в строку, чтобы можно было с этим содержимым что-то сделать, чтобы изменённое содержимое вставить в терминал? Если не совсем понятен вопрос, то вот примерно вот так мог бы выглядить код:
#include <iostream>
#include <string>
#include <stdlib.h>
int main() {
std::string consoleInsd = get_console(); // тут нужно получить содержимое консоли
int lenght = consoleInsd.length();
consoleInsd = consoleInsd.substr(0, length - 10); // для примера хочу убрать последние 10 символов
system("clear");
std::cout << consoleInsd;
return 0;
}
Ответы (2 шт):
Автор решения: maestro
→ Ссылка
Не существует средств языка C++, способных получить содержимое консоли, так как консоль - компонент операционной системы, а не языка.
Если ваша цель - редактировать содержимое консоли, то может быть, попробовать сторонние библиотеки, например, ncurses?
Автор решения: eri
→ Ссылка
Такое не получится, но можно переместить курсор на 10 символов влево и напечатать поверх. Для этого выводи в консоль 10 раз \r
Другие коды https://ru.manpages.org/console_codes/4