書籍購入:『実践ユニケージ開発手法02 シェルスクリプト学習編』

買うことを……強いられているんだ!

実践ユニケージ開発手法02 シェルスクリプト学習編

実践ユニケージ開発手法02 シェルスクリプト学習編

本書は、ユニケージ開発で使用するシェルスクリプト関連機能の学習書であり、かつ実例に基づいてユニケージ開発流のシェルスクリプトの書き方を学ぶ本、といったところだろうか。USP研究所のユニケージ開発手法教育講座でいう「K-BASIC2: ユニケージ基礎編(後半)」に相当するようだ。

本書の前半は、シェルスクリプトの基礎と、シェルスクリプトで用いる各種機能(ワイルドカード・パイプ・リダイレクト・シェル変数・制御構文・その他)について解説している。使用するシェルはbashであり、POSIXベースのシェルスクリプトに、ブレース展開・配列・パイプステータスなど、いくつかのbash独自拡張機能を加えたスタイルだ。

興味深いのは、制御構文の説明が本書前半の最後に書かれていることと、シェル関数の説明が存在しないことだ。「フィルタによるテキスト・レコードの変換(≒データからデータの変換)」をパイプで数珠繋ぎして、何段かの変換を経て目的の出力を得る*1、というユニケージ手法らしさが垣間見れる構成だろう。

本書後半は、前半とは打って変わり、サンプルデータを用いて、帳票出力スクリプトの作成や、サンプルデータのような「整理されたデータ」を事前に作成しておくバッチスクリプト*2の作成を扱っている。前巻や本書前半以上に、手を動かして学ぶことになる。

サンプルデータだが、これを書いている時点(2016-02-10)ではUSP研究所のサイト内のリンクで辿れる場所には置いてないようだ。本書目次の前ページにある「学習環境」の項に書かれているURL(http://www.usp-lab.com/LECTURE/CGI/INDEX.CGI)に直接アクセスすればよい。

本書は前半の実行例のサンプルからusp Tukubaiのコマンドを使用しているので、先に『実践ユニケージ開発手法01 コマンド学習編』で学習してから読むほうが良いだろう。もしくは、前巻ないしOpen usp Tukubaiコマンドマニュアルを随時参照しながら読み進めることになるだろう。

*1:個人的には、他のモダンなプログラミング言語でいう「メソッド・チェーンによる、コレクションからコレクションへの変換」や、.NET Frameworkでいう「LINQによるデータソースの検索・操作で、目的のデータのコレクションを得る」などの作業の仲間だと思っている

*2:ユニケージ手法の用語で言うと、レベル3データからレベル4データに変換するスクリプト