Как сделать программу Linux в Интерфейсе командной строки, кто отображает хороший пользовательский интерфейс?
Например, когда я использую "wget" для загрузки файла с Интернета, я вижу продвижение загрузки в Интерфейсе командной строки. Как я могу сделать это?
Взгляните на проклятия . Это библиотека для текстового пользовательского интерфейса.
ncurses - популярный вариант, существуют API-интерфейсы для множества языков программирования.
Вы можете получить базовый интерфейс, используя \r
для перехода к началу текущей строки.
Чуть более продвинутым является ncurses.
Следующий шаг вверх - Newt.
find . -type f -name "*.xls" -printf "xls2csv %p %p.csv\n" | bash
bash 4 (рекурсивный)
shopt -s globstar
for xls in /path/**/*.xls
do
xls2csv "$xls" "${xls%.xls}.csv"
done
-121--876172- Используйте:
svn list -R PATHTOREPOSITORY | where {$_ -like "*stringtomatch*"}
-121--3528639- Если требуется создать графический интерфейс для сценариев Bash или обернуться вокруг других утилит командной строки, можно использовать диалоговое окно ( справочная страница ).
Вот два отличных руководства для начала работы:
Я бы не назвал прогресс-отчет wget "красивым gui", но в любом случае, классической библиотекой для построения графических интерфейсов без X Windows в Linux и UNIX системах является ncurses.
Недавно была запущена C# версия ncurses, подробности здесь
Если вы используете Mono, вы можете использовать MonoCurses
Попробуйте curses, это хорошо документированный API для текстового пользовательского интерфейса. Кроме того, есть так много проектов с открытым исходным кодом, которые используют curses, чтобы вы могли увидеть и научиться
wget не у меня действительно есть графический интерфейс, все, что я вижу, это то, чего вы уже можете достичь с помощью stdout и echos (например, printf () или std :: cout)
В любом случае, для простых диалоговых окон типа MessageBox, но не ограничиваясь этим, также посмотрите диалог