はじめてUNIX で仕事をする人が読む本 の備忘録 04
お世話になった本
この連載ブログを書くにあたり、お世話になった本がこちら。LPICと被っているところもありますが、実務での使い方なんかも扱っており、良書だと思います。
- 作者: 木本雅彦,松山直道,稲島大輔
- 出版社/メーカー: KADOKAWA / アスキー・メディアワークス
- 発売日: 2014/03/25
- メディア: Kindle版
- この商品を含むブログ (5件) を見る
第4章 作業の自動化(シェルスクリプト)
必要性と利点
言わずもがな、楽して品質向上。
ただし、想定外の事故に注意。
Bourne Shell について
シェルスクリプトを動かすには、シェルが必要。
csh
でもksh
でもzsh
でもシェルスクリプトは書けるが、一般的にはBourne Shell
が多い。
なぜか。たいていのOSやディストリビューションで使えるから。
簡単なスクリプトの実行
とりあえず作ってみる。
/etc/passwd
ファイルからBourne Shell
を使っているユーザを抽出し、そのユーザのリストと人数をファイルに書き出す。
ファイル名:example001.sh
#! /bin/sh # example001: システム上でBourne Shell を使っているユーザのリストとその数を取得する cat /etc/passwd | grep '/bin/sh' | cut -f1 -d":" > bsh_user_list.txt wc -l bsh_user_list.txt | sed -e "s/^ *\([0-9][0-9]*\) .*/Total: \1/" >> bsh_user_list.txt
スクリプト作成後、実行まで
# ファイルオーナーに実行権を付与 $ chmod u+x example001.sh # スクリプトを実行 $ ./example001.sh # 実行結果の確認 $ cat bsh_user_list.txt root Total: 1 $
シェルスクリプトの1行目はshebang
と呼ばれる。
sh ./example001.sh
で実行した場合は、単なるコメントとして扱われる。
./example001.sh
で実行した場合は、/bin/sh
でexample001.sh
が扱われるよ。というように挙動が変わる。
ただし、システムによって変わるので注意
スクリプトを作るときの注意点
シェルスクリプトの実用例
これは手抜きさせていただきます。 ググったら出てくるし、本もあれば環境も目的も違うと思いますので。
以上で、第4章を終わります。
次回、第5章 オンラインマニュアル です。