シェルとはUnixやLinuxをCUIで対話的に操作できるプログラムです。ユーザがログインすると、まずシェルが実行されます。シェルにはいくつかの種類があり、それぞれの特徴と使い方をご紹介します。
Unix/Linuxシェルには次に示す組み込みコマンドがあります。
コマンド | 説明 | sh | bash | csh |
---|---|---|---|---|
alias | コマンドの別名を定義する。 | NG | OK | OK |
case | 条件によって実行する処理を分岐する。 | OK | OK | NG |
for | 処理を繰り返し実行する。 | OK | OK | NG |
foreach | 処理を繰り返し実行する。 | NG | NG | OK |
goto | 処理位置を移動する。 | NG | NG | OK |
history | コマンドの履歴を表示する。 | NG | OK | OK |
if | 条件によって実行する処理を分岐する。 | OK | OK | OK |
set | シェル変数を表示又は設定する。 | OK | OK | OK |
switch | 条件によって実行する処理を分岐する。 | NG | NG | OK |
unalias | aliasコマンドで定義したコマンドの別名を削除する。 | NG | OK | OK |
until | 処理を繰り返し実行する。 | OK | OK | NG |
while | 処理を繰り返し実行する。 | OK | OK | OK |
コマンド | 説明 |
---|---|
bg | 停止中のジョブをバックグラウンドで実行する。 |
bind | キーバインドを設定する。 |
builtin | シェル組み込みコマンドを実行する。 |
cd | 現在の作業ディレクトリを変更する。 |
command | 外部コマンドを実行する。 |
compgen | 補完候補を作成する。 |
complete | 入力補完を設定する。 |
continue | 次の繰り返しに飛ぶ |
declare | 変数を定義する。 |
dirs | ディレクトリスタックを表示する。 |
disown | ジョブをデーモン化する。 |
echo | 文字列を表示する。 |
enable | 組み込みコマンドの無効と有効を切り替える。 |
eval | 文字列を評価してコマンドを実行する。 |
exec | 現在のプロセスのままコマンドを実行する。現在のプロセス(シェル)は終了する。 |
exit | シェルを終了する。 |
export | 環境変数を設定する。 |
fc | コマンドの履歴を編集したり実行する。 |
fg | 停止中又はバックグラウンドジョブをフォアグラウンドで実行する。 |
help | 組み込みコマンドのヘルプを表示する。 |
jobs | 実行中のジョブを表示する。 |
kill | プロセスを強制的に終了させる。 |
let | 数値演算を行う。 |
local | ローカル変数を定義する。 |
logout | シェルからログアウトする。 |
popd | ディレクトリスタックから取り出して現在のディレクトリを移動する。 |
printf | 書式を指定して表示する。 |
pushd | ディレクトリスタックにディレクトリを追加する。 |
pwd | 現在のディレクトリを表示する。 |
read | 標準入力から1行読み込む。 |
readonly | 変数を読み込み専用にする。 |
return | シェル関数を終了する。 |
shift | コマンドラインオプションをシフトする。 |
shopt | シェルのオプション動作を制御する変数の値をトグルさせる。 |
source | 実行コマンドをファイルから読み込んで実行する。 |
suspend | シェルの実行をサスペンドする。 |
test | 条件式を評価する。 |
times | プロセスの時間を表示する。 |
trap | シグナルを送出する。 |
type | コマンドがどのように解釈されるかを表示する。 |
typeset | declareと同じ |
ulimit | リソースリミットを設定する。 |
umask | ファイル新規作成時のパーミッションを設定する。 |
unset | 変数を削除する。 |
wait | プロセスをwaitする。 |