Unixシェルとは|ターミナル(bash・sh・zsh等)の定義と基本コマンド解説
Unixシェル(bash・sh・zsh等)の仕組みと必須コマンドを初心者向けに実例で丁寧解説、ターミナル操作を短時間で身につける入門ガイド。
Unixシェルは、ターミナルやコンソールと呼ばれる環境で動作する対話型のコマンドラインインターフェイス(CLI)です。キーボードから入力したコマンドを解釈して実行し、ファイル操作やプロセス管理、プログラムの起動など、システム操作を行う役割を持ちます。シェル自体は「コマンドを受け取り実行するプログラム」であり、ターミナルはその入出力(文字を表示・入力する窓口)を提供するものと理解すると分かりやすいです。
- ls はファイルの一覧を表示します。
- cp でファイルをコピーする
- man で、コマンドの詳細情報を得ることができます。
シェルの種類と特徴
代表的なUnix系シェルには、次のようなものがあります。構文や拡張機能が多少異なりますが、基本的なコマンドの実行方法やパイプ、リダイレクトの仕組みは共通です。
- sh(Bourne shell): 古くからある基本的なシェル。スクリプト互換性が高い。
- bash(Bourne Again Shell): Linuxで広く使われるデフォルトのシェル。便利な機能(履歴検索、補完、配列など)が豊富。
- zsh: 高機能でカスタマイズ性が高く、補完やプロンプトの拡張が強力。Oh My Zshなどのフレームワークで人気。
- csh / tcsh: C言語風の構文を持つシェル(tcshは拡張版)。
基本的な使い方とコマンド例
よく使われる基本コマンドとその用途(抜粋):
- pwd — 現在の作業ディレクトリを表示
- cd — ディレクトリの移動(例: cd /home/user)
- ls — ディレクトリの内容を一覧表示(ls -la で詳細表示)
- cp — ファイルをコピー(cp src dst)
- mv — ファイルの移動・名前変更
- rm — ファイルを削除(注意して使用)
- mkdir — ディレクトリを作成
- cat / less / more — ファイル内容の表示
- chmod / chown — 権限・所有者の変更
- ps / top / htop — プロセスの確認と監視
- grep — テキスト検索(パイプと組み合わせてよく使う)
- find — ファイル検索
- echo — 文字列や変数の表示
- history — 過去のコマンド履歴を表示(!番号で再実行)
- alias — コマンドの短縮定義
入出力、パイプ、リダイレクト
シェルは標準入力(stdin)、標準出力(stdout)、標準エラー(stderr)という概念を扱います。これらを使ってコマンド同士を連結したり、ファイルへ出力したりできます。
- パイプ(|): コマンドAの出力をコマンドBの入力に渡す(例: ls -l | grep '^d')
- 標準出力リダイレクト(>): コマンドの出力をファイルに書き込む(例: echo hello > file.txt)
- 追記リダイレクト(>>): ファイル末尾に追記する
- 標準エラーのリダイレクト(2>): エラーのみ別ファイルへ出力
シェルスクリプトとShebang
複数のコマンドを順に実行するファイルをシェルスクリプトと呼びます。先頭にShebang(例: #!/bin/bash)を置くことで、そのスクリプトをどのシェルで実行するかを指定できます。スクリプトを実行可能にするには chmod +x script.sh を使います。
設定ファイルと環境変数
シェルごとに起動時に読み込まれる設定ファイルがあります(例: ~/.bashrc, ~/.bash_profile, ~/.zshrc)。ここでエイリアス、PATHの設定、プロンプトカスタマイズなどを行います。環境変数(例: PATH, HOME, LANG)はシステム動作やコマンド検索に影響します。
ヘルプの得方と学習方法
コマンドの使い方を調べる方法:
- man コマンド名 — マニュアルページを表示(例: man ls)
- コマンド --help — 簡易の使い方を表示(例: ls --help)
- info コマンド名 — 詳細ドキュメント(インストールされている場合)
補足: 入力元はキーボードだけではない
コマンドはキーボードから直接入力される以外に、ファイルや他のコマンドからの標準入力、あるいはスクリプトや他のプログラムから実行されることが多いです。たとえば、シェル上でハードウェア情報を表示する対話的なダイアログやコマンドを用いれば、CPUの種類や性能情報を取得することができます(コマンドは環境により異なります)。
最後に、シェル操作は慣れると非常に強力です。最初は基本コマンドとファイル操作、リダイレクト、パイプを中心に学び、少しずつスクリプトや環境設定に慣れていくとよいでしょう。

Unixシェル(この場合はLinuxシェル)(クリックで拡大
百科事典を検索する