「キャラクタユーザインタフェース」の版間の差分

編集の要約なし
m
[[ファイル:Bash screenshot.png|thumb|200px|CUIの画面例。内容は[[Gentoo Linux]]でBashコマンドを実行したもの。]]
'''キャラクタユーザインタフェース''' ({{Lang|en|character user interface}}、{{Lang|en|character-based user interface}}、略称 '''CUI'''、[[和製英語]])、'''コマンドラインユーザインタフェース''' ({{Lang|en|command line user interface}}、略称 '''CLI''')は、コンピュータにおいて、[[キーボード (コンピュータ)|キーボード]]を用いて[[入力]]を行い[[文字]]によって[[出力]]を行う様式の[[ユーザインタフェース]]である。[[グラフィカルユーザインタフェース]] (GUI) する語として使われることが多い。'''CUI''' ({{Lang|en|character user interface}}) という呼称は基本的に日本だけで通用するものであり、国際的に英語圏などで主に'''CLI''' ({{Lang|en|command line user interface}}) という呼称が使われる。日本においても会話などでは'''コマンドライン'''や[[コンソール]](端末)と呼ばれることが多い。
 
== 特徴 ==
{{独自研究|section=1|date=2013年4月}}
CUICLIは旧式のインタフェースだと思われがちだが、[[GUI]]環境には無い長所も持っている。そのため、[[Linux]]などを含む[[Unix]]系のサーバではCUICLIで操作することが現在でも主流であるし、開発者などの中にはコマンドライン環境でほとんどの作業を済ませる者がいる。また、従来のWindowsはコマンドラインインタフェースが貧弱であったが、近年ではWindows PowerShellのようなCUIにCLI環境を強化する動きが現われている。
 
=== 長所 ===
* プログラムを作成する際、ユーザからの入力を処理する部分([[コマンドラインインタプリタ]])を比較的簡単に作れる。GUIのプログラムは、一般にユーザインタフェースの作成に手間がかかり、内部状態も多くなる。
* 処理の自動化が容易である(一連のコマンドや制御文は文字情報なのでファイルに単純に保存しておくことができ、それを後で何度でも実行・修正できる)。
* プログラムを作成する際、ユーザからの入力を処理する部分([[コマンドラインインタプリタ]])を比較的簡単に作れる。GUIのプログラムは、一般にユーザインタフェースの作成に手間がかかり、内部状態も多くなる。
* プログラムの出力を別のプログラム直接流すこともできる入力したり(簡易なプロセス間通信: [[パイプ]])、ファイルに保存て機能すたりでき
* キーボードだけで操作できるため、手慣れたユーザは作業を敏速に行うことができる。
* リモートログインする場合、[[クライアント (コンピュータ)|クライアント]]側で専用の[[ソフトウェア]]が不要であるターミナルソフ[[Secure_Shell|SSH]]クライアント程度で済む)ことが多い。
* 一般に自動補完機能が利用できるため、コマンドをすべて手で入力する必要はない。
* 別のコンピュータにリモートログインする場合、ネットワークへの負荷が低い。低速な回線でもリモート操作ができる。
* 一般に自動補完機能が利用できるため、コマンドをすべて手で入力する必要はない。
* キーボードだけで操作できるため、手慣れたユーザは作業を敏速に行うことができる。
* 直前操作の確認や、資料収集(操作履歴の保存・他人への提供)などが容易。
* 先行入力が可能である。GUIにおける、操作を行うためのボタンが表示されるまで待たされる、といったことが避けられる。
* リモートログインする場合、[[クライアント (コンピュータ)|クライアント]]側で専用の[[ソフトウェア]]が不要な(ターミナルソフト程度で済む)ことが多い。
* など
 
* など
 
== CUICLIを採用している[[オペレーティングシステム]]/[[アプリケーションソフトウェア|アプリケーション]] ==
*[[メインフレーム]]、[[ミニコンピュータ|ミニコン]]、[[オフィスコンピュータ]]の大半の[[オペレーティングシステム]]b
*[[UNIX]]、[[Linux]] (GUI環境を標準搭載しているディストリビューションが多いが、その場合も仮想端末でCUIが使われる)
 
== GUI上でのエミュレーション ==
多くのGUI環境はその中でCUIのCLI環境を提供している。これらは[[タスク]]の1つとして、GUIのウィンドウ内でCUICLI環境を表示する。
 
* 端末[[エミュレータ]]
匿名利用者