目次はじめにシェルとはコマンドラインインタープリターとはシェルの振る舞い実装まとめはじめに私が通っているスクールでシェルの再実装を行う機会があったので、その内容を忘れないようにまとめておこうと思います。記事作成に当たって下記のような立ち位置で進めていこうと考えています。シェルとその内部実装をかいつまんで大まかに理解することを目標にしています。情報の集約・簡略化などによって正確な情報が欠如しているかもしれません。ゆるくシェルについてのイメージがわく程度の読み物としてみていただければと思います。シェルとはユーザーに対して、カーネルを含む様々なソフトウェアへのインターフェースを提供するプログラムです。シェルの具体例としてbashやPowerShellなどが挙げられ、これらはコマンドラインインタープリターに該当します。コマンドラインインタープリターとはコマンドラインインタープリターとは、ユーザーがキーボードから入力したテキスト形式のコマンドを読み取り、それを解釈してコンピューターが実行可能な命令に変換して実行するプログラムのことです。Loop)に該当します。シェルの振る舞いこれらを考慮して、シェルのプログラムの大まかな処理の流れをまとまると、任意の入力を受け取り、それを評価して結果を出力することを繰り返すプログラムであるということがわかります。シーケンス図っぽく表すとこんな感じですね。このもやもやしている部分(特にEvalの部分)が難しいので、今回は簡単な処理に置き換えて、入力として受け取ったものを出力するだけだと考えてひとまず実装してみましょう。シーケンス図っぽく表すとこんな感じですね。実装Go言語で上記のシーケンス図にならって実装すると下記のようになります。}}まとめ今回はシェルについてのおおまかなイメージの理解とコマンドラインインタープリターとして振る舞うための大枠の実装を行いました。次回以降でシェルの基本機能を徐々に理解・実装をしていきたいと思います。悠太2023年度新卒で入社。社内での担当はまだ未定。社外では42Tokyoという場所でエンジニアとしてのスキルを研鑽しています。本記事に記載の情報に起因するいかなる損害に対しても弊社は一切の責任を負わないものとします。お客様のご判断と責任のもとにご活用ください。