カテゴリ: Linux 更新日: 2026/04/11

LinuxのBourneシェルとは?初心者でもわかるUnixシェルの基本と特徴

LinuxのBourneシェルとは?Unixシェルの基本と特徴
LinuxのBourneシェルとは?Unixシェルの基本と特徴

先生と生徒の会話形式で理解しよう

生徒

「Linuxでよく聞くBourneシェルって何ですか?シェルってそもそも何ですか?」

先生

「LinuxのBourneシェルは、読み方はボーンシェルで、Unixシェルの基本となるコマンドラインの環境の一つです。シェルとは、コンピュータとユーザーがやり取りするためのプログラムのことです。」

生徒

「コマンドを入力して操作する黒い画面のことですよね?初心者でも使えるものですか?」

先生

「はい、初心者でも基本的なコマンドから使えます。順を追ってBourneシェルの特徴や基本コマンドを説明します。」

1. シェルとは何か?Linuxでの基本概念

1. シェルとは何か?Linuxでの基本概念
1. シェルとは何か?Linuxでの基本概念

Linux(リナックス)でいうシェルとは、ユーザーがコマンドを入力して、Linuxカーネル(カーネル、読み方はカーネル)に命令を伝えるためのプログラムです。代表的なシェルにはBourneシェル(ボーンシェル)、Bash(バッシュ)、Zsh(ゼットシェル)などがあります。シェルは単なるコマンド入力ツールではなく、スクリプトを作って自動化することも可能です。

2. Bourneシェルとは?Unixシェルの元祖

2. Bourneシェルとは?Unixシェルの元祖
2. Bourneシェルとは?Unixシェルの元祖

Bourneシェル(sh)は、1970年代にAT&TのUnixシステムで開発されました。Linuxでも互換性を持つ基本シェルとして採用されています。Bourneシェルは軽量でシンプルな設計のため、スクリプトを書く際に標準的に使われることが多く、Linux初心者が最初に学ぶシェルとしてもおすすめです。

例えば、ディレクトリの内容を確認するには以下のようにします。


ls -l
total 8
-rw-r--r-- 1 user user  120 Mar 22 12:00 file1.txt
-rw-r--r-- 1 user user 1024 Mar 22 12:05 file2.txt

3. Bourneシェルの特徴とメリット

3. Bourneシェルの特徴とメリット
3. Bourneシェルの特徴とメリット

Bourneシェルの特徴は以下の通りです。

  • 軽量で高速に動作する
  • スクリプトを書く際の標準シェルとして互換性が高い
  • 制御構造(if文、for文など)が使いやすい
  • Unix系OSやLinuxで広くサポートされている

例えば、簡単なループ処理の例をBourneシェルで書くとこうなります。


for file in *.txt
do
    echo "ファイル名: $file"
done
ファイル名: file1.txt
ファイル名: file2.txt

4. BourneシェルとBash(バッシュ)の違い

4. BourneシェルとBash(バッシュ)の違い
4. BourneシェルとBash(バッシュ)の違い

Bash(Bourne Again SHell、バッシュ)はBourneシェルを拡張したシェルです。BashはBourneシェルの機能をほとんどサポートしつつ、タブ補完や履歴機能など初心者に便利な機能が追加されています。しかし、基本のスクリプトやコマンドはBourneシェルと互換性があるので、BashでもBourneシェルの知識は活かせます。

例えば、現在のディレクトリを表示するコマンドはBourneシェルでもBashでも同じです。


pwd
/home/user

5. Bourneシェルでよく使う基本コマンド

5. Bourneシェルでよく使う基本コマンド
5. Bourneシェルでよく使う基本コマンド

Linux初心者がBourneシェルで最初に覚えるべきコマンドをいくつか紹介します。

  • ls:ディレクトリやファイルの一覧表示
  • cd:ディレクトリの移動
  • echo:文字列の出力
  • cat:ファイルの内容表示

例えば、テキストファイルの中身を確認するには以下のようにします。


cat file1.txt
これはテストファイルです。

6. Bourneシェルスクリプトの基本

6. Bourneシェルスクリプトの基本
6. Bourneシェルスクリプトの基本

Bourneシェルでは、複数のコマンドをまとめてスクリプトとして保存し、実行することができます。拡張子は必ずしも.shでなくても構いませんが、わかりやすくするために.shが使われることが多いです。

簡単なスクリプト例:


#!/bin/sh
echo "Bourneシェルの学習中です"
date

上記スクリプトを保存して実行すると、画面にメッセージと現在日時が表示されます。

7. Bourneシェルの便利な活用例

7. Bourneシェルの便利な活用例
7. Bourneシェルの便利な活用例

Bourneシェルは、定期的なバックアップやログ管理、ファイル整理など様々なタスクで活用できます。例えば、特定のディレクトリ内の.txtファイルをまとめてコピーするスクリプトは以下のようになります。


#!/bin/sh
mkdir -p backup
cp *.txt backup/

このスクリプトを実行することで、指定ディレクトリ内のすべてのテキストファイルをbackupフォルダにコピーできます。

8. まとめに向けたポイント

8. まとめに向けたポイント
8. まとめに向けたポイント

Bourneシェルは、LinuxやUnixの基本的なシェルであり、スクリプト自動化の基礎を学ぶ上で非常に重要です。Bashなどの拡張シェルに進む前に、Bourneシェルのコマンドやスクリプトの書き方に慣れておくと、Linux操作全般がスムーズになります。

今回紹介したコマンドやスクリプト例を何度も試すことで、初心者でも自然にシェル操作の感覚が身につきます。

まとめ

まとめ
まとめ

本記事では、LinuxのBourneシェル(sh)の基本概念、特徴、活用方法について詳しく解説しました。Bourneシェルは、Unixの歴史に根ざした軽量でシンプルなシェルであり、Linux初心者にとって最初に学ぶべき基本シェルです。Linux環境でコマンド入力やスクリプト作成を行う際には、Bourneシェルの理解が非常に重要です。

まず、シェルとはユーザーがLinuxカーネルに命令を伝えるインターフェースであり、単なるコマンド入力ツールではなく、スクリプトを活用することで作業の自動化や効率化が可能です。Bourneシェルは1970年代に開発されたUnixシェルで、軽量かつ互換性の高さから、多くのLinuxディストリビューションで標準的に使用されています。

Bourneシェルの特徴として、軽量で高速に動作すること、スクリプト作成時に互換性が高いこと、if文やfor文など制御構造が使いやすいこと、そしてUnix系OSやLinuxで幅広くサポートされている点が挙げられます。これにより、初心者でも基本コマンドやループ処理、条件分岐などを理解しやすくなっています。

Bash(Bourne Again SHell)はBourneシェルを拡張したもので、タブ補完や履歴機能など初心者に便利な機能が追加されていますが、Bourneシェルの基本コマンドやスクリプト知識はそのまま活かせます。たとえば、現在のディレクトリを表示する

pwd

や、ディレクトリの内容を確認する

ls -l

などは両方のシェルで同じように使えます。

Bourneシェルでよく使う基本コマンドとしては、lscdechocatなどがあり、ファイル操作や文字列出力、ディレクトリ移動などの基本作業を行う際に必須です。これらのコマンドを組み合わせてスクリプトを作ることで、作業を自動化できます。

スクリプト作成の基本例として、簡単なメッセージ表示と日時出力を行うBourneシェルスクリプトは以下の通りです。


#!/bin/sh
echo "Bourneシェルの学習中です"
date

また、ファイル整理やバックアップなどのタスクもBourneシェルで簡単に自動化できます。例えば、特定ディレクトリ内の.txtファイルをまとめてコピーするスクリプトは次のように書けます。


#!/bin/sh
mkdir -p backup
cp *.txt backup/

このようにBourneシェルを活用することで、Linuxでの作業効率を大幅に向上させることが可能です。初心者でも基本コマンドや簡単なスクリプトを繰り返し実行することで、自然と操作に慣れていきます。

総括すると、BourneシェルはLinuxやUnixの操作の基礎を学ぶ上で最適なシェルであり、スクリプト作成、コマンド操作、ファイル管理、バックアップなど幅広いタスクで活用できます。BashやZshなど他のシェルに進む前に、Bourneシェルの基礎をしっかり理解することが、Linux操作全般のスキルアップにつながります。

先生と生徒の振り返り会話

生徒

「先生、Bourneシェルの基本がよくわかりました。特にコマンドやスクリプトの書き方が理解できました。」

先生

「そうですね。BourneシェルはLinuxの基本操作の基礎になるので、まずはここから始めることが大切です。繰り返しコマンドやスクリプトを実行することで自然に操作感覚が身につきます。」

生徒

「簡単なスクリプトでバックアップやファイル整理が自動化できるのも便利ですね。」

先生

「はい、その通りです。自動化の感覚をつかむことが、Linux作業を効率化する第一歩になります。BashやZshに移行しても、ここで学んだBourneシェルの知識は必ず役立ちます。」

生徒

「なるほど。基本を理解しておくと、どんなLinux環境でも応用できるんですね。」

先生

「その通りです。基本コマンドの理解、スクリプト作成の練習、日常的なファイル管理の自動化を通して、Linux操作全体のスキルをしっかり身につけましょう。」

関連記事:
カテゴリの一覧へ
新着記事
New1
Linux
LinuxのBourneシェルとは?初心者でもわかるUnixシェルの基本と特徴
新規投稿
New2
基本情報技術者試験
機械学習とは?初心者でもわかる人工知能の基本と仕組みをやさしく解説
更新記事
New3
基本情報技術者試験
人工知能とは?AIの仕組みや活用例を初心者向けにわかりやすく解説!
更新記事
New4
Linux
Linuxのbgコマンドとは?ジョブをバックグラウンド実行する方法を初心者向けに解説
新規投稿
人気記事
No.1
Java&Spring記事人気No1
基本情報技術者試験
イーサネット(Ethernet)とは?初心者にもわかるLANの基本技術をやさしく解説
No.2
Java&Spring記事人気No2
基本情報技術者試験
NIC
403
NICとは何か?初心者にもわかるネットワークインターフェースカードの基本
No.3
Java&Spring記事人気No3
基本情報技術者試験
セグメントとは?ネットワークの基本単位を初心者向けにやさしく解説
No.4
Java&Spring記事人気No4
基本情報技術者試験
16進数とは?初心者にもわかる意味・読み方・変換方法をやさしく解説!
No.5
Java&Spring記事人気No5
基本情報技術者試験
パケットとは?初心者にもわかりやすくネットワークの仕組みをやさしく解説!
No.6
Java&Spring記事人気No6
基本情報技術者試験
IMAP
151
IMAPとは?初心者でもわかるメール受信プロトコルの仕組みと使い方
No.7
Java&Spring記事人気No7
基本情報技術者試験
SMTP
150
SMTPとは?初心者でもわかるメール送信の仕組みとプロトコルをやさしく解説!
No.8
Java&Spring記事人気No8
基本情報技術者試験
CGI
131
CGIとは?初心者でもわかるWebとプログラムのつながりを解説!