#はじめに
学んだことをqiitaに投稿という形でアウトプットするため、また備忘録として記事を作成しました。
#シェルとは?
Linuxの操作はコマンドでする
シェルはコマンドを操作する場所
LinuxのCLIを提供するソフトウェア
カーネルとユーザの橋渡しをしているのがシェル、インターフェース
シェルの画面
ユーザ名、ホスト名、プロンプトが表示されている
・ユーザ名
ログインしているユーザ
・ホスト名はコンピュータなどの機器を人間が識別しやすいようにつけた名前、コンピュータの名前やIPアドレスが入っている
・プロンプト
「コマンド入力を待っているから、コマンドを入力してね」と待っている記号
###シェルの仕組み
1、ユーザがプロンプトにコマンドを打つ
2、シェルが入力された名前のコマンドを探す
3、Linuxカーネルが見つかったコマンドを実行
4、シェルが実行されたコマンドを画面に表示
※macではターミナルを立ち上げてコマンドを入力するが,
ターミナルは入出力の画面を提供するソフトウェア
シェルはコマンドを解釈するソフトウェア
ターミナルの中でシェルが動いている
別物なので注意
なぜ別れているかというとLinuxにはひとつのプログラムにはひとつの機能をやらせる、色々な機能を出来るだけ細かく切り分ける設計思想がある。
機能が別れていることでお互いに影響を与えることなく柔軟に開発することが出来る、この設計思想は非常に有用で身につけるべき
###シェルの種類
・sh
もっとも古い
ほぼ全てのUnixで使用可能
機能は少ない
・bash
shを基本として機能を拡張してシェル
Linux環境でデフォルトのログインシェル
学習で使うならbashがおすすめ
・zsh
bashの機能を取り込み、独自の拡張も追加
機能が豊富
###まとめ
シェルはLinuxのCLIを提供するソフトウェア
プロンプトは入力待ちの記号
ターミナル、シェルは別物
シェルは3種類、sh,bash,zsh
ひとつのプログラムにはひとつの機能をやらせる、色々な機能を出来るだけ細かく切り分ける設計思想がある