Linux Book Review
UNIXの基本ツールをイチから学ぼう
中澤勇
@IT編集局
2002/9/3
|
Linuxのインストール本などでも、シェルやエディタの簡単な操作方法は載っている。こうした本を読んで、取りあえず使えるようになったという人も多いだろう。ただし、「Linuxの入門書」に載っている解説だけでは限界がある。シェルやエディタの機能は、書籍の1章を割いた程度で語り尽くせるものではない。
今回は、シェルやエディタなど、UNIX/Linuxの基本中の基本ともいえるツールを一から学び直せる書籍を紹介する。それぞれのテーマに絞った専門書には、概説書にはない詳細な情報がある。それなりに使えているという人も、これから紹介する書籍を読めば知らなかった機能を見つけることができるだろう。これを機に、基本ツールをもっと使いこなせるようになろう。
シェルスクリプト・マスターになろう |
入門UNIXシェルプログラミング Bourne Shellの基礎から学ぶUNIX World Bruce Blinn 著 ソフトバンク パブリッシング 1999年3月 ISBN4-7973-0828-1 3200円 |
UNIX系OSにとって必須ともいえるシェルスクリプト。本書は、このシェルスクリプト・プログラミングを非常に丁寧に解説している良書である。シェルスクリプトの基礎であるシェルの細かい挙動(注)から始まっており、まったくの初心者にもオススメだ。全体的に、「〜とするとなぜダメなのか」「〜はなぜそのような挙動なのか」といった解説が丁寧なので、非常に得るものが多い。
第1章は基礎知識として各種クオーテーションやバッククオート、各種括弧の使い方からifなどの制御文などについて。2章以降はシェル変数やシェル関数、リダイレクション、環境変数と続く。さらにシェルスクリプトにおけるオプションや引数の処理、sedを使ったフィルタや計算、文字列操作、プロセス操作などの解説。後半は実用的なシェル関数のサンプルや「プロセスの親子関係をツリー構造で出力する」シェルスクリプトなど、それなりの規模と内容を伴なったプログラミングが学べるようになっている。
また、全般を通してシェルスクリプトの要素となる各種コマンドの使い方や移植性にも言及するなど、非常に濃い内容となっている。デバッグ手法や前述の移植性については、さらに1章ずつ用意されている。特定のOSに特化しないように配慮されているので、本書で学んだ知識は長く、多くの場面で役に立つだろう。
注:筆者は、ワイルドカードでドットファイルを指定する際に、「.*」や「.?」はOKで「[.a]*」がダメであることを本書で知った。理由は本書参照。 |
bashだけがシェルじゃない! |
入門 csh & tcsh Paul DuBois 著 オライリー・ジャパン 2002年2月 ISBN4-87311-073-4 2900円 |
Linuxではbashがデフォルトのシェルになっているが、これを使い続けなければならないということはない。Linux関係の雑誌や書籍はbashを前提に書かれていることが多いので、初心者はまずbashをマスターすることをお勧めするが、ある程度理解できたら別のシェルを使ってみるのもいいだろう。
bash以外のシェルといってもいろいろあるが、本書が扱っているのは「csh」と、その拡張版の「tcsh」だ。これらは主にBSD系UNIXで使われてきたシェルだが、もちろんLinuxでも利用できる。
ログインシェルの変更方法やcsh/tcshの起動方法から始まり、各種シェル変数やヒストリ、コマンドラインエディタ、補完機能、ジョブの操作やシェルの活用方法まで、csh/tcshを使いこなすための情報がすべて詰まっているといってもいいだろう。非常に初歩的なレベルから丁寧に解説されているので、まったくの初心者でもついていける。高度な使用方法まで扱っているが、自分のペースでマスターしていけばいい。
本書を読むなら、練習用のアカウントを作り、そのアカウントのログインシェルをtcshにして実際に試せるようにしておくといいだろう。こうすれば、普段使うアカウントはbash、練習用アカウントはtcshのように使い分けることができる。
なお、本書は対話的にシェルを使うことに重点が置かれており、シェルスクリプトについてはほとんど触れられていない。理由は、「cshとtcshはシェルスクリプトを記述するにはあまりよいシェルではないから」だそうだ。
viの基礎から奥義まで |
入門vi 第6版 Linda Lamb、Arnold Robbins 著 オライリー・ジャパン 2002年5月 ISBN4-87311-083-1 2500円 |
UNIX系OSのエディタとしては基本中の基本ともいえるvi。Linuxの入門書にも必ずviの使い方は紹介されており、誰でもファイルの簡単な編集や保存くらいはできるのではないだろうか。しかし、ご存じのとおり、極めてシンプルな見た目と反比例するかのようにviの奥は深い。
本書を読めば、コマンドの組み合わせ技から一括置換、カスタマイズ方法、exスクリプトの使い方など、非常に多くのことを学ぶことができる。普段viを活用している人でも、知らなかった機能があるのではないだろうか? もちろん、「入門」とあるように、初めはカーソルの動かし方から丁寧に解説されている。図版が効果的に使われているので、まったくの初心者でも理解しやすいだろう。巻末のクイックリファレンスやexコマンド、viのオプション、vi関連Webサイトなども便利だ。
また、第5版から第6版の改版に当たって、viクローンの1つである「vim」を解説する章が新設された。この章ではvim固有の拡張機能(GUI、拡張正規表現、編集機能など)が詳しく紹介されている。Linuxの場合、viとしてvimが使われていることも多いので一読する価値がある。
UNIX系OSが存在する限り、viも使い続けられるだろう。そして、viがある限り、本書もまた価値を持ち続けるだろう。
深遠なるEmacsの世界へ |
入門GNU Emacs 第2版 Debra Cameron、Bill Rosenblatt、Eric Raymond 著 オライリー・ジャパン 1999年10月 ISBN4-900900-83-4 4800円 |
Emacsは、活用すれば極めて強力な「環境」となるが、自由度があり過ぎるため使いこなすのはなかなか難しい。もちろん全機能を利用する必要はないのだが、ある程度はどのような機能があるのか知っておいた方がいい。
こんなとき、本書のようにEmacsの使い方を一から網羅している書籍があると便利だ。Emacsの画面構成やバッファなどの概念、簡単な操作から編集、検索・置換、シェルバッファやファイル操作、メールやUsenetニューズ、Telnet、FTPなどの使い方、テキストの清書機能など、Emacsの多くの機能を学ぶことができる。さらに、マクロの書き方やEmacsのカスタマイズ方法、CモードやLISPモードなどのプログラミング用機能、Emacs LISPプログラミングといった、より高度な部分も当然扱われている。
Emacsという「環境」にとって、上記に挙げたような利用方法は一側面にすぎないが、「こうしたことができる」ということを学んでおくのは価値がある。本当にEmacsを究めたければ、必要なEmacs LISPライブラリを見つけてくるなり自分で書くなりすればいいだろう。
ちなみに、本書はGNU Emacs 19.30がベースになっている。最新のGNU Emacsや最近主流になりつつあるXEmacsではやや異なる部分もあるかもしれないが、それでも本書のように網羅的な書籍は手元に置いておきたい1冊だ。
各書評にあるボタンをクリックすると、オンライン書店で、その書籍を注文することができます。詳しくはクリックして表示されるページをご覧ください。 |
Linux Square Book Review |
- 【 pidof 】コマンド――コマンド名からプロセスIDを探す (2017/7/27)
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、コマンド名からプロセスIDを探す「pidof」コマンドです。 - Linuxの「ジョブコントロール」をマスターしよう (2017/7/21)
今回は、コマンドライン環境でのジョブコントロールを試してみましょう。X環境を持たないサーバ管理やリモート接続時に役立つ操作です - 【 pidstat 】コマンド――プロセスのリソース使用量を表示する (2017/7/21)
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、プロセスごとのCPUの使用率やI/Oデバイスの使用状況を表示する「pidstat」コマンドです。 - 【 iostat 】コマンド――I/Oデバイスの使用状況を表示する (2017/7/20)
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、I/Oデバイスの使用状況を表示する「iostat」コマンドです。
|
|