Bashとは?「シェルの役割」や「コマンドの動き」を図解でわかりやすく解説!

プログラミングやサーバー操作をしていると必ず出てくるのが「Bash(バッシュ)」です。LinuxやmacOSを触る人なら毎日使うツールですが、

  • そもそも「Bash」って何?
  • コマンドを実行した後、裏側でどんな処理が行われているの?
  • 「シェル」や「カーネル」との関係がよく分からない…

という疑問を持つ人はとても多いです。

この記事では、Bashの仕組み、シェルとカーネルの役割、Bashの基本コマンドを図解を交えながら初心者にも分かりやすく解説します。

Bash(バッシュ)とは?

Bash(バッシュ)とは?

Bashは、UNIX系OS(LinuxやmacOSなど)で使われている「シェル(Shell)」と呼ばれるプログラムの一種です。

OSには「カーネル(kernel)」と呼ばれるOSの中核となるソフトウェアがあります。このカーネルが次のようなOSの役割を担っており、これらの操作はカーネルを通じて行われています。

  • ファイルの読み書き
  • ディスクやメモリの管理
  • プロセス(アプリ)の管理
  • ネットワークの管理

ただし、私たちが直接カーネルに指示することはありません。

なぜかというと、カーネルは私たちが入力するコマンド(例:pwdlsなど)を理解する仕組みを持っていないからです。私ユーザーが「このフォルダを見たい」「ファイル一覧を出して」と思っても、そのままではカーネルに伝わりません。そこで役立つのがシェル(Shell)です。

シェルは、ユーザーが入力したコマンドを受け取り、その意味をカーネルが分かるように解釈して適切なプログラムを起動してくれる「受付係」のような役割を持っています。また、カーネルの処理結果を解釈して出力してくれます。つまりシェルの一種であるBashを使うと、OSのさまざまな機能をコマンドを通して利用できるようになります。

例えばlsと入力すると、シェルはlsという外部プログラムを起動します。lsはカーネルの機能を使ってディレクトリ内の情報を取得し、その結果を標準出力に表示します。

シェルの種類

シェルはBashだけではありません。

  • Zsh(macOSの標準シェル)
  • fish(補完が強力)
  • PowerShell(Windowsの標準)

などがあります。その中でもBashは歴史が長く、広く普及している有名なシェルです。

Bashが使われる主な場面

Bashはプログラミング以外にもいろいろな場面で使われます。以下に一例を示します。

  • Linuxサーバーの操作
  • ファイルのコピー / 移動 / 検索
  • GitやDockerの操作
  • 自動化スクリプトの作成(bashスクリプト)
  • サーバーの定期処理(cron)
  • AWSなどクラウド環境の管理

特にAWS / Docker / Gitを使う人は、Bashが完全に必須スキルになります。

Bashの基本コマンド

ここでは、初心者が最初に覚えるべき代表的な基本コマンドだけ厳選して紹介します。

コマンド役割(何をする?)
lsフォルダ内のファイル一覧を表示ls
cdディレクトリ(フォルダ)を移動cd Documents
pwd今いるディレクトリの位置を表示pwd
mkdir新しいフォルダを作成mkdir test
rmファイルを削除rm file.txt
cpファイルをコピーcp a.txt b.txt
mvファイル移動 or 名前変更mv old.txt new.txt

本記事のまとめ

この記事では『Bash(バッシュ)』について説明しました。

Bashは、私たちの入力したコマンドを読み取り、OS(カーネル)に正しく伝えてくれる「窓口」のような存在です。LinuxやmacOSを扱ううえで欠かせない基本ツールであり、サーバー運用・開発・自動化など多くの場面で活躍します。

今回紹介した基本コマンド(ls / cd / pwd / mkdir / rm / cp / mv)は、Bashを使ううえでまず覚えておくべき基礎です。まずはこれらを実際に試しながら、少しずつBashに慣れていってみてください。

Bashの仕組みが分かると、開発作業が一段とスムーズになります。

お読みいただきありがとうございました。

スポンサーリンク