キャラクタユーザインタフェース
キャラクタユーザインタフェース ()、キャラクタベースユーザインタフェース () 、コンソールユーザインタフェース () 、またはコマンドラインインタフェース () は、キーボード等からの文字列を入力とし、文字列が表示されるウィンドウや古くはラインプリンタで印字される文字などを出力とする、ユーザインタフェースの様式である。もっぱらグラフィカルユーザインタフェース (GUI) の対義語として使われる。
CUIはGUIと比べて直感的な操作ができないなどの欠点があるものの、メインメモリおよびビデオメモリなどのコンピュータ資源の消費が少ないことから、性能の低い初期のコンピュータではCUIによる対話環境が主流だった。その後、コンピュータの性能が向上し、マウスなどのポインティングデバイスによって直感的な操作のできるGUI環境がMacintoshやWindows 95などによってオフィスや一般家庭にも普及し、CUIは既定のインターフェイスではなくなっていった。パーソナルコンピュータ (PC) 向けやサーバー向けのオペレーティングシステム (OS) には、既定のインターフェイスがGUIであってもコマンドラインターミナルなどのCUI環境が依然として用意されているが、スマートフォンなどのモバイル端末向けOSには標準で用意されておらず、GUIが主流となっている。
しかし、GUI環境であればポインティングデバイスによる操作を繰り返し行わなければならないような煩雑な作業を、CUI環境であれば簡単なコマンドの組み合わせで実行できる場合もあるなど、CUIにも依然として利点はある。特にエンドユーザーだけでなくネットワーク管理者やソフトウェア開発者も利用するPCやサーバーにおいては、GUIとCUIは用途によって住み分けて併存しているものであり、CUIは完全に廃れたわけではない。
ユーザインタフェースがCUIのアプリケーションをコンソールアプリケーションという。またあまり一般的ではないが、テキストコンソールを利用してウィンドウなどを表現しているインタフェースをテキストユーザインタフェースという。
ショートカットキーをCUIの利点と考えるものもいる。だが、CUIの入力デバイスはキーボードでなくても良い一方、GUI環境でもショートカットキーを便利に多用できるよう設定できるものもあるので、キーボードの利点とは言えるかもしれないが、必ずしもCUIの利点ではない。
端末エミュレータは、それ自体は（は）GUIアプリだが、CUIのための環境を提供するものである。
以降、断りがない限りCUIそのものだけでなくコマンドライン、シェルについても述べる。