[ ] [ ] [ ] [ トップページ ] [ 目次 ] [ Linuxの概要 ] [ 基本的な操作 ] [ 日本語の扱い ] [ テキスト編集 ] [ システム管理 ] [ シェルスクリプト ] [ インストール作業の基本 ] [ データベース ] [ 各種リファレンス ]  
[ バッチファイルとの違い ] [ シェルスクリプトの基本 ] [ シェルスクリプトを読んでみる ]

シェルスクリプトの基本

シェルスクリプトの実行

シェルスクリプトの実体はテキストファイル。
そのままでは実行できないので,chmodコマンドでファイルの属性を変更し,実行権限(x)を与える。
実行するときは,通常のコマンドと同じようにファイル名を入力するだけ。
コマンドと同じようにパラメータを渡すこともできる。

スクリプトの例

#!/bin/bash
# This is a script file for practice

echo "$@ was given as parameter"

上記例を実行したところ

[toshim@gw2000 ~/work]$ chmod +x myscript  <-- ファイル属性に実行権限を付加
[toshim@gw2000 ~/work]$ ls -l myscript
-rwxr-xr-x   1 toshim   users          78 May 25 10:54 myscript  <-- 属性がrwxr-xr-xになり,実行可能になった
[toshim@gw2000 ~/work]$ ./myscript para1 para2 para3  <-- para1 para2 para2という三つのパラメータを指定して実行
para1 para2 para3 was given as parameter

シェルスクリプトで良く使うコマンド/表記法

#
コメント
#!/bin/bash
シェルスクリプトを実行するシェルを指定する。
シェルスクリプトの先頭に書く。
$1
$2
パラメータを参照する。
Windowsバッチファイルの%1,%2などと同じだが,下記のような使い方もある。
$0はコマンド名を表す。
$@はパラメータ全部に置き換わる。つまり,$1 $2 $3 ...というのと同じ。

シェル中には外部コマンドとシェルの組み込みコマンドの両方を同じように使える。

制御構造

制御構造はこちらを参照。
制御構造の中の条件判定などで使う式や演算子はこちらを参照。

変数などの置換え

Unixのシェルは変数などを展開したり置換える機能が豊富。
こちら
を参照。

シェル起動時に実行されるファイル

Linux標準のBashシェルは起動時に~/.bashrcファイルを実行する。

注意点

変数への代入はスペースを空けてはいけない。(例:n=10)

変数はそのままではシェルスクリプトに引き継がれない。
つまり,シェル変数やBash変数はシェルスクリプトではログイン時の値に戻り,ユーザ定義変数は未定義となる。
変数をシェルスクリプトに引き継ぎたい場合はexportコマンドを使う。

'....'と"....."は意味が若干違う。
'....'は変数の展開や置換えなどを行わないが,"....."は展開や置換えを行う。

 

  
WB00806_.gif (471 バイト)
Copyright(C) 1997-1999 GlassCom
webmaster@glasscom.com