UNIXプログラミング環境
カーニハンとパイクによるUNIX入門書の名著。
その哲学も学びながら、UNIXを使いこなすために必要な知識を解説します。使い方を紹介する入門書ではありませんが、本書の内容はUNIX環境のより深い部分を知ることができます。
Brian Kernighan, Rob Pike著、石田晴久 監訳、野中浩一 訳
定価: 3,456円 (本体3,200円)
発売日:2017年5月31日
形態:A5(480ページ)
ISBN:978-4-04-893057-4
◆UNIXのプログラミング哲学を学ぶ
「本書の目的は、このUNIXのプログラミング哲学を知ってもらうことにある。UNIXシステムとそのコンポーネントをうまく使うためには、プログラムの使い方だけではなくそれをどうやって環境に合わせるかを理解しなくてはならない。」(本書「はじめに」より)
基本的な使い方から、シェルの活用、sedやawkによるフィルタの作り方、C言語によるプログラム開発まで、UNIXをより深く使いこなすために知識が豊富なサンプルとともにわかりやすく解説されています。単にUNIXの使いこなしだけではなく、プログラムを設計する際の発想方法まで、示唆に富んだ解説から、多くのことを学べるでしょう。
※ 本書は、株式会社アスキーより刊行された『UNIXプログラミング環境』を再刊行したものです。再刊行にあたっては、旧版刊行後に発見された誤植などを修正しています。
◆著者/監訳者紹介
■Brian W. Kernighan(ブライアン・カーニハン)
Lucent Technologies 社ベル研究所の計算機科学研究センターに所属。Addison-Wesley 社のProfessional Computing シリーズの顧問を務める。Dennis Ritchie との共著に『プログラミング言語C』がある。
http://www-cs-faculty.stanford.edu/~knuth/
■Rob Pike(ロブ・パイク)
Lucent Technologies 社ベル研究所の計算機科学研究センターに所属。オペレーティングシステムPlan 9 とInferno の開発で設計/実装リーダーを務めた。研究の中心テーマはソフトウェアをもっと簡単に書けるようにするためのソフトウェア。
■石田 晴久(いしだ はるひさ)
1936年 生まれ
1959年 東京大学理学部物理学科卒業
1961年 東京大学数物系研究科物理学修士修了
1961年 Fulbright 留学生として渡米
1964年 アイオワ州立大学電気工学科博士修了
1964年 マサチューセッツ工科大学研究員
1966年 電気通信大学助教授
1970年 東京大学大型計算機センター助教授
1975年 ベル研究所客員研究員
1982年 東京大学大型計算機センター教授
2000年現在 多摩美術大学教授
専 攻
情報科学、コンピュータ全般
特に分散処理、マン・マシン・インターフェイス
パーソナル・コンピュータ、OS、プログラム言語
主な著書
マイクロコンピュータ・プログラミング(岩波書店 1984 年)
C プログラミング(岩波書店 1984 年)
UNIX(岩波書店 1983 年)
マイクロコンピュータの活かし方(産報出版 1977 年)
超大型コンピュータ・システム(産業図書 1975 年)
翻 訳
プログラミング言語C(共立出版 1981 年)
監 修
パソコン言語学(アスキー 1984 年)
◆目次
第1章 初心者のための UNIX
1.1 はじめてみよう
1.2 日々の利用 — ファイルおよびよく使われるコマンド
1.3 ファイルについて — ディレクトリ
1.4 シェル
1.5 UNIXシステムのその他の機能
第2章 ファイル・システム
2.1 ファイルの基礎
2.2 ファイルの種類
2.3 ディレクトリとファイル名
2.4 ファイルの使用許可
2.5 iノード
2.6 階層化ディレクトリ
2.7 デバイスファイル
第 3 章シェルの利用
3.1 コマンド行の構造
3.3 新しいコマンドの作成法
3.4 コマンドの引数とパラメータ
3.5 プログラム出力を引数として与える方法
3.6 シェル変数
3.7 さらに高度な入出力の切換え
3.8 シェル・プログラムにおけるループ
3.9 全部まとめて送る方法 — bundle
3.10 シェルがプログラム可能になっている理由
第4章 フィルタ
4.1 grepファミリー
4.2 その他のフィルタ
4.3 ストリーム・エディタ — sed
4.4 パターン検索・処理言語 — awk
4.5 よいフィルタとよいフィルタ . .
第5章 シェルによるプログラミング
5.1 calコマンドを強化する
5.2 どのファイルが実行されたかを調べる — which
5.3 whileとuntilを用いたループ — 監視のテクニック
5.4 割込みのかけ方—トラップ
5.5 ファイルの置換 — overwrite
5.6 プログラム名の指定によるプロセスの終了 — zap
5.7 ブランクと引数 — pick
5.8 公共サービス情報 — news
5.9 ファイルの変化の把握 — get と put
5.10 まとめ
第6章 標準入出力を用いたプログラミング
6.1 標準入出力 — vis
6.2 プログラムの引数 — vis 第2版
6.3 ファイル・アクセス — vis 第3版
6.4 画面ごとの表示プログラム — p
6.5 1つの応用例 — pick
6.6 バグとデバッグについて
6.9 環境へのアクセス
6.7 具体例 — zap
6.8 対話型ファイル比較プログラム — idif
第7章 UNIX システムコール
7.1 低レベル入出力
7.2 ファイル・システム — ディレクトリ
7.3 ファイル・システム — iノード
7.4 プロセス
7.5 シグナルと割込み
第8章 プログラム開発
8.1 第1段階: 四則演算
8.2 第2段階: 変数とエラー回復
8.3 第3段階: 任意の変数名 — 組込み関数
8.4 第4段階: マシン語へのコンパイル
8.5 第5段階: 制御フローと関係演算子
8.6 第6段階: 関数と手続き — 入出力
8.7 性能の評価
8.8 まとめ
第9章 文書作成
9.1 ms マクロパッケージ
9.2 troffのレベル
9.3 tbl および eqn プリプロセッサ
9.4 マニュアル・ページの書き方
9.5 その他の文書作成用ツール
エピローグ
付録1 エディタの要約
付録2 hoc のマニュアル
付録3 hoc のリスト
risgkがこの投稿を「スキ!」と言っています
cxxがasciidwangoからリブログしました
asciidwangoの投稿です