本書について ─ 改訂にあたって

『⁠⁠改訂新版]シェルスクリプト基本リファレンス ― #!/bin/shで、ここまでできる』より転載
2011年3月 山森 丈範

『シェルスクリプト基本リファレンス』の初版が発行されたのは2005年のことでした。OSに依存せず、LinuxでもFreeBSDでもSolarisでもそのまま動作するシェルスクリプトとはいえ、細かい点を見るとOSやシェルの種類によって使える文法、コマンド、オプション等に差異があります。そのような差異を明らかにしつつ、初心者にもわかりやすい解説を行って1冊の本にまとめたのが本書でした。シェルスクリプトを書く際には、筆者自身も本書を参照して各OSの対応状況をチェックすることがあり、それほどに本書が役に立つ内容となったのではと自負しています。

元々バージョン更新による変化が少ないシェルスクリプトですが、初版から少々年月が経った今、本書の内容を更新するべき箇所も増えてきました。たとえば、FreeBSD 4.xでは/bin/shの組み込みコマンドだったprintfが現在では外部コマンドに変わっている、bash3以降で使えるようになった{1..10}などの連番のブレース展開などです。また、bashを#!/bin/shのスクリプトで起動した場合は動作しないため初版では触れなかったプロセス置換について、改訂版では取り上げることにしました。そのほか、本書に掲載されたすべてのシェルスクリプトについて、Linux/FreeBSD/Solarisで再度動作確認を行い、本文解説等の文章の一部については、よりわかりやすいように表現を修正しました。

これからシェルスクリプトを学ぶ方はもちろん、中級者や上級者の方にとっても本書が「いつも手元に置いておきたい本」になれば幸いです。

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

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