2014-09-16 2 views
0

Я хочу написать программу, которая отображает ее вывод в оболочке, например, htop, а не только запуск программы и использование команды watch. Я просмотрел исходный код htop и все еще немного потерян. Есть ли выход за пределами tty в используемой оболочке или все пользовательские панели htop и открытие выходного файла, как это не является родной задачей для оболочки, такой как bash?Как работает дисплей htop?

Спасибо.

+0

Можете ли вы подробно рассказать о том, что вы пробовали до сих пор? Я думаю, что тогда ваш вопрос будет лучше принят. – paisanco

+0

Если вы наведете указатель на htop, вы заметите, что в описании говорится, что это приложение «ncurses». Это библиотека, которая позволяет «терминальным» программам делать больше интересных вещей, чем просто печатать строки. – phs

ответ

3

htop автор здесь. Вы ищите библиотеку NCurses. С Ncurses, вы можете реализовать приложение TextMode полноэкранного C.

Он предоставляет набор примитивов для «рисования» на терминале: то есть, move() идти к XY координат на экране, чтобы изменить функции цвета, чтобы стереть часть экрана и т. д. Он также предоставляет некоторые высокоуровневые конструкции, такие как «окна», через которые вы можете прокручивать части экрана отдельно, но в htop я не использую это и не реализую чертежи с прокручиваемыми панелями их «вручную» с использованием примитивов нижнего уровня.

Смежные вопросы