UNIX では、コマンドライン シェルへのアクセスは端末経由です。これは、大規模な共有コンピュータに、マシンに直接接続された端末 (シリアル ケーブルなど) を介して文字どおりアクセスしていた時代を思い起こさせます。
実際、UNIX ボックスで使用する「xterm」プログラムまたはその派生物は、ターミナル エミュレーターと呼ばれるのが適切です。これは (ユーザーの観点からも、オペレーティング システムの観点からも) 旧式のエミュレーターの 1 つと同じように動作します。ターミナルマシン。
さまざまな種類の端末がたくさんあり、UNIX システムはそれぞれの種類の機能を認識している必要があるため、興味深い方法で入力を処理するのは少し複雑になります。これらの機能は伝統的にtermcapファイルに保存されていましたが、最近のシステムでは代わりにterminfoを使用していると思います。試す
man 5 terminfo
詳細については、Linux システムを参照してください。
さて、幸いなことに、入力機能やウィンドウ機能で興味深いことを行うコマンドライン アプリケーションを作成するために、端末機能などをあまりいじる必要はありません。役立つライブラリcursesがあります。調べる
man 3 ncurses
詳細については、Linux システムで curses の使用に関するまともなチュートリアルをオンラインで見つけることができるでしょう。