gihyo.jp » 書籍案内 » 定期刊行物一覧 » WEB+DB PRESS » WEB+DB PRESS plusシリーズ » [改訂新版]シェルスクリプト基本リファレンス ― #!/bin/shで,ここまでできる

書籍紹介

[改訂新版]シェルスクリプト基本リファレンス ― #!/bin/shで,ここまでできる

[表紙][改訂新版]シェルスクリプト基本リファレンス ― #!/bin/shで,ここまでできる

2011年4月27日発売

山森丈範 著

A5判/336ページ/

定価2,604円(本体2,480円)

ISBN 978-4-7741-4643-0

ただいま弊社在庫はございません。

→学校・法人一括購入ご検討の皆様へ

この本の概要

『シェルスクリプト基本リファレンス』の改訂新版。シェルスクリプトの知識はプログラマにとって,一度覚えると長く役立つ知識です。さらに,基本のシェル「#!/bin/sh」を使いこなせれば,一度書いたスクリプトをその後も使い回しやすくなります。本書では,基本を徹底解説しながら,合わせて長く動く,かつ複数プラットフォームに対応できる移植性の高いシェルスクリプト作成技術をわかりやすく説明しました。今回の改訂新版ではLinux/FreeBSD/Solarisの最新バージョンへの対応に加え,ノウハウ&定石や種々活用しやすいサンプルの増強をはじめ充実の内容でお届けします。


こんな方におすすめ

  • 標準シェル「#!/bin/sh」の基本から学びたい方
  • 複数のプラットフォームで動く,移植性の高いシェルスクリプトを作りたい方
  • 日常的に使う,お気に入りのコマンドラインを,簡単にツール化したい方
  • Unixコマンドなどの基本を学んだ後,一歩先のシェルスクリプトに挑戦したい方

本書の特徴

プログラマではなく,普通に道具としてコンピュータを使用している人でも,たとえば,カレントディレクトリの複数のファイルそれぞれに一定の処理を施したいとか,所定のオプションを付けて一連のコマンドを起動したいとかいった状況はよく発生します。こんなとき,シェルスクリプトを知っていれば,これらの処理を行うツールがすぐに簡単に作れます。

シェルスクリプトはプログラム言語の一種ですが,コンパイルなどの操作が不要で,誰でも気軽に書けてしまう言語です。プログラム言語の代表格であるC言語は,ある意味プログラマだけが知っていればいい言語ですが,シェルスクリプトは,プログラマ以外のユーザも含めたごく普通のユー ザが,自分の作業の効率アップのために日常的に使用する言語なのです。

本書では,おもにLinuxを中心に標準シェルとして使用されているbashを取り上げ,このbashを使ったシェルスクリプトの書き方をひととおり解説しています。執筆にあたっては,bashを基本としながらも,bash以外のBシェル(Bourne Shell)系のシェルとの互換性・移植性を重視し,bash独自と思われる拡張部分よりも,基本的なBourne Shellとしての解説に重点を置きました。このため,すべての項目について,bashのほかに,FreeBSDのsh(/bin/sh)とSolarisのsh(/bin/sh)で動作確認を行い,対応状況をそれぞれ のようにアイコンを用いて表示してあります。この表示は,シェルスクリプトの互換性・移植性のための大きな参考となるでしょう。また,これら3種類のシェルすべてに○印のアイコンが表示されている項目のみを使用すれば,OSに依存しない,移植性の高いシェルスクリプトを記述することができるはずです。

シェルスクリプトをまったく書いたことがない人は,本書を読み,まずは「Hello World」から書き始めていただきたいです。また,ある程度のシェルスクリプトを書いたことがある人には,本書の記述をヒントに,シェルスクリプトの小技・裏技を再発見していただければ幸いです。


※初版『シェルスクリプト基本リファレンス』より。

本書が想定している読者

本書では,ユーザとして,コマンドラインでのLinux/UNIXの基本操作ができる人を想定しています。具体的には,ls,cp,rmなどの基本的なコマンドが使えれば本書の内容が理解できるでしょう。

また,本書の中には,シェルスクリプトとC言語とを比較している部分がありますが,C言語については必ずしも理解している必要はありません。これはあくまでさらに理解を深めるための参考事項にすぎないため,適宜読み飛ばしても差し支えないものです。


本書が対象としている環境

本書の記述内容を実行するには,bashが動作する環境が必要です。

bashは,LinuxやMac OS Xでは,標準シェルとしてインストールされているため,これらのユーザは,とくに設定変更を行っていないかぎり,すでにbashを使用しているはずです。FreeBSDやSolarisでは,bashはOS標準ではありませんが,ソースファイルやバイナリパッケージなどからbashをインストールして使うことが可能です。

また,仮にbashがなくても,sh,ash,kshなどのBシェル系のシェルがあれば,前述のとおり本書の のすべてに○がついている項目については,Bシェル系として共通に動作するでしょう。

なお,本書ではOSとしてLinuxなどのUNIX系OSを想定していますが,bashが動作する環境でさえあれば,たとえばWindowsのCygwin環境のような,非UNIX系環境であってもかまいません。

動作確認の環境について

動作確認時のOSのバージョンとシェルはそれぞれ,Fedora 13(Linux)のbash 4.1.7およびbash 3.2.33,FreeBSD 8.1の/bin/sh,Solaris 10の/bin/shです。これら以降のバージョンを使用していれば問題なく動作すると思われます。また,これら以前のバージョンであっても,ほとんどが問題なく動作すると思われます。

ただし,上記と異なるバージョン,環境においては,本書での説明内容と動作等が異なる場合もあります。その点については,あらかじめご承知おきください。

著者プロフィール

山森丈範(やまもりたけのり)

大学時代にUNIXを触って以来,仕事でもプライベートでもUNIX系OSを使用しているプログラマ。SunOSやNEWS-OSなどが動くUNIXワークステーション上の/bin/shに長く慣れ親しみ,当時職場等でログインシェルとして与えられていたcshを,ヒストリもエイリアスも補完機能もない素の/bin/shに自主的に変更して使用したほどの/bin/sh好きである。メイン環境がLinux上のbashに変わった現在でも,/bin/shとの互換性/移植性を常に気に留めながらシェルスクリプトを書いている。

コメント

  • お問い合わせにつきまして

    ご指摘、ありがとうございます。

    Commented : #2  編集部 (2016/10/06, 11:20)

  • indexの抜け

    巻末のindexに以下の抜けがありました。
    ${パラメータ:-値}/${パラメータ-値} p187

    次期版があるなら修正お願いします。

    Commented : #1  入道雲 (2016/10/05, 15:36)