web-dev-qa-db-ja.com

コマンドラインでLinuxの「GUI」を作成する

ニースのユーザーインターフェイスを表示するコマンドラインインターフェイスでLinuxプログラムを作成するにはどうすればよいですか?

たとえば、「wget」を使用してインターネットからファイルをダウンロードすると、コマンドラインインターフェイスでダウンロードの進行状況を確認できます。どうやってやるの?

17
Martin Magakian

curses を見てください。これは、テキストベースのUI用のライブラリです。

13
Brian Rasmussen

ncurses は人気のあるオプションであり、多くのプログラミング言語用のAPIがあります。

16
Quentin

\rを使用して現在の行の先頭に移動すると、基本的なインターフェイスを取得できます。

もう少し高度なのは ncurses です。

次のステップは Newt です。

BashスクリプトのGUIを実行したり、他のコマンドラインユーティリティをラップアラウンドしたりする場合は、 ダイアログマニュアルページ )を使用できます。

ここにあなたが始めるための2つの素晴らしいダイアログチュートリアルがあります:

5

Wgetの進捗レポートを「Nicegui」とは呼びませんが、とにかく、X Windowsなしでグラフィカルインターフェイスを構築するための古典的なライブラリはLinuxであり、UNIXシステムは ncurses です。

最近、ncursesのC#バージョンが開始されました。詳細を確認してください ここ

1
axel_c

プログレスバーのみが必要な場合は、単純なprint(バーを出力)に続けてキャリッジリターン文字(ANSI文字#13)を使用して直接実行できます。行の先頭に戻ります。その行は、後で印刷することで更新できます。

より複雑なニーズの場合、ncursesが実際に標準的な方法です。

1
Eric O Lebigot

Monoを使用している場合は、 MonoCurses を使用できます。

0
Julien Hoarau

Cursesを試してください。これはテキストベースのUI用の十分に文書化されたAPIです。また、cursesを使用しているオープンソースプロジェクトがたくさんあります。

0
Lucas

wgetには実際にはGUIがありません。私が見るのは、stdoutとechoを使用してすでに達成できるものだけです(例:printf()またはstd :: cout)

とにかく、MessageBoxの種類の単純なダイアログボックスについては、それに限定されませんが、ダイアログも見てください

0
Sebastian Mach

ANSIエスケープコードを使用できます。 bashの簡単な例

echo -e "\033[H\033[2J  \033[20;20H  \033[4mThis is a underlined line.\033[0m"
0
Evgeny Karpov