gihyo.jp » 書籍案内 » Rubyシェルプログラミング−irb&irbsh徹底活用−

Rubyシェルプログラミング−irb&irbsh徹底活用−

[表紙]Rubyシェルプログラミング−irb&irbsh徹底活用−

2003年8月4日発売

るびきち 著

B5変形判/232ページ

定価2,814円(本体2,680円)

ISBN 4-7741-1798-6

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

  • 本書のサポートページ

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

書籍の概要

この本の概要

本書は,Rubyのシェルでの活用やシェルとしての機能に着目した本です。Rubyといえばオブジェクト指向スクリプト言語としての側面が有名ですが,そういった堅苦しいことは抜きにして,対話型インタフェースのirbや,そのシェル機能拡張版のirbshをつかって,Rubyコマンドを弄って体験できるようになっています。

こんな方におすすめ

  • Rubyをシェルでも使いたい人
  • Rubyを対話的に学習したい人

目次

Chapter 1 シェルとRuby 〜Rubyなシェル登場〜

  • 1.1 シェルってなんだ
    • ・コマンドラインの逆襲
  • 1.2 irb
    • ・立ち上がれirb
    • ・ようこそirbワールドへ
    • ・最新版irbのインストール
  • 1.3 詳細に入る前に

Chapter 2 まずはirbから

  • 2.1 irb初歩の初歩
    • ・対話的Ruby環境
    • ・GNU Readlineによる編集機能
  • 2.2 履歴
    • ・直前の値は_で
    • ・eval history 〜もっと前にも遡れる〜
  • 2.3 irbからirbshへ

Chapter 3 irbsh 〜inf-ruby-modeの先にあるもの〜

  • 3.1 巨大戦艦Emacs
    • ・とにかくデカい
    • ・バッファとウィンドウ
    • ・無限の拡張性
  • 3.2 Emacs内でプログラムを動かす
    • ・comint-mode
    • ・shell-mode
    • ・inf-ruby.el 〜irbをEmacs内で〜
  • 3.3 irbsh 〜本格派Rubyシェル〜 登場!
    • ・シェルスクリプトってなんだかなぁ
    • ・Rubyなシェルもどき
    • ・そうだ,irbだ!
    • ・Emacsなら可能!
    • ・irbsh誕生!
  • 3.4 インストール
  • 3.5 irbsh起動
  • 3.6 irbshの基本
  • 3.7 基本的にはinf-ruby-mode
  • 3.8 スペースから始まるコマンドはシェルコマンド
    • ・文脈反転でしまった!という場合でも安心
  • 3.9 シェルライクなキーバインド
  • 3.10 魔法のTabで補完・展開
    • ・強力補完機能
    • ・ワイルドカード展開(シェルコマンドの文脈のみ)
    • ・ホームディレクトリ展開
    • ・直前の引数のディレクトリ部分を挿入(シェルコマンドの文脈のみ)
  • 3.11 対応する括弧の挿入
  • 3.12 スクリプトをロードする
  • 3.13 再起動
  • 3.14 cdについて
    • ・cdを含む複数のコマンドは面倒
    • ・quoteするのが面倒ならば
  • 3.15 ヒストリメニュー
  • 3.16 操作方法のまとめ
  • 3.17 拡張system
    • ・irbsh_system関数
    • ・zshライクな「=コマンド名」
    • ・実行中のコマンドを表示・非表示
    • ・試運転モード
  • 3.18 便利な機能
    • ・コマンドラインスタック
    • ・バッファ・リージョンをFileオブジェクトとして操作
    • ・複数のirbsh
  • 3.19 制御符号
    • ・「;」返り値の出力を抑制
    • ・「&」バックグラウンドシェル
  • 3.20 マルチラインバッファ
    • ・複数行のコードも楽々
    • ・マルチラインバッファのヒストリ

Chapter 4 ここからが本番 〜irbshを使った開発〜

  • 4.1 シェルコマンド実行機能だけじゃない?
  • 4.2 Rubyで落書き♪
    • ・*ruby scratch*バッファ
    • ・最初の落書き
    • ・メソッドを落書きしてみよう
    • ・*ruby scratch*の内容を変更
  • 4.3 真打登場! 評価リスト
    • ・評価リスト初歩の初歩
    • ・スクリプト変更! おもしろくなるぞ
    • ・長い出力だってへっちゃら
  • 4.4 スクリプト作成!〜lsm.rb:lsもどき〜
  • 4.5 テストファイルの作成
  • 4.6 File.lstat
    • ・より効率よく
    • ・File::Statオブジェクト
    • ・statはシェルコマンドにもなっている
  • 4.7 最初のメソッド
  • 4.8 少しずつ開発
    • ・心配症でも大丈夫
    • ・もうちょっとカッコよく
  • 4.9 ちょっと一休み:Timeオブジェクト
    • ・Time#strftime
  • 4.10 再びlsm_fileへ
  • 4.11 ファイルがディレクトリの場合
  • 4.12 ファイルがシンボリックリンクの場合
    • ・似たもの同士だが……
    • ・ついにシンボリックリンク対応へ
  • 4.13 コマンドライン引数を取るように
  • 4.14 最初の実行
  • 4.15 ディレクトリ内のファイルを表示する
    • ・ちょっと待った
  • 4.16 全ソース
  • 4.17 そして開発は続く

Chapter 5 irbshを使ったCGI開発

  • 5.1 交換日記CGI
  • 5.2 CGI開発のために・・・・
    • ・WWWサーバを立ち上げる
    • ・CGIの概略
    • ・eRuby入門
  • 5.3 交換日記作成
    • ・交換日記の仕様
  • 5.4 プログラムの構成
  • 5.5 ちょっとずつ作成
  • 5.6 irbshによるCGIの動作確認
  • 5.7 書き込みフォーム仮作成
  • 5.8 認証
  • 5.9 データベース作成
    • ・SDBMクラス
    • ・交換日記データ保存形式
  • 5.10 SDBMを使った交換日記データベースクラスの作成
    • ・記事はHash
    • ・get_latestメソッド
    • ・writeメソッド
    • ・話は単純ではない 〜排他制御〜
    • ・字数制限への対処
    • ・動作確認
  • 5.11 ちょっと脱線:RubyUnitによるテストプログラム
    • ・RubyUnitのインストール
    • ・RubyUnitの使い方
    • ・めんどくさがりやのためのc2t.rb
  • 5.12 日記記事表示
    • ・Koukan#latest_messages
    • ・$IRBSH変数
    • ・データベースが空であるときの出力を確認
  • 5.13 試し書き
    • ・書き込みフォーム作成
    • ・メンバの名前はKoukan#nameにおまかせ
    • ・Koukan::select_name_html
    • ・Koukan::DB#name_latest
    • ・書き込み処理Koukan#write
    • ・やっと書き込み実験
  • 5.14 koukan.cgiの設定
  • 5.15 wwwsrvで確認
    • ・ログイン
    • ・書き込み
    • ・出来上がり
  • 5.16 全ソース

著者プロフィール

るびきち

1996年からLinuxを使い出し,EmacsとRubyに出会う。それ以来,必要な情報を素早くわかりやすい形で取り出す方法を模索し続けている。Emacsに新たな風を吹き込むべくanything.el等多数のEmacs Lispプログラムを開発。著書に「Ruby逆引きハンドブック」(シーアンドアール研究所)他がある。

G-CLOUD

ピックアップ

エンジニアパワーアップ講座 ~システム基盤を活用するための基礎知識~

イマドキのエンジニアに要求されるさまざまな知識や能力。これらを効率よくキャッチアップしていくヒントをいろいろな視点から取り上げます。

LinuxCon Japan/ Tokyo 2010の歩き方

9月開催「LinuxCon Japan/ Tokyo 2010」の見どころと楽しみ方を,メインスピーカーの皆さんに自ら紹介していただきましょう。

自分で考えた家が現実に!? ~「3DマイホームデザイナーLS3」で実現する,普請道楽のススメ

「3DマイホームデザイナーLS3」を使えば,パズル感覚の簡単操作で理想の住まいを立体的にシュミレートすることができます。

手軽に使える専用サーバ「さくらのマネージドサーバ」を徹底チェック

1台のサーバを占有して使うことができる「さくらのマネージドサーバ」に新たに加わった「Core 2 Duoプラン」の特徴と魅力をお伝えします。

gihyo.jp インフラエンジニア情報局

ネットワークやITにかかわるあらゆる業種で必要とされるインフラエンジニアに向けた情報や魅力を多角的に紹介します。

一行クイックアンケート

gihyo.jpで取り上げてほしいネタは?

※検索はページ右上の検索ボックスをご利用ください。

よく読まれている連載

Software is Beautiful

Windows 95/98などのチーフアーキテクトなどを務めたことで知られる中島聡氏による,エンジニアとして働き,生活していくうえで考えるべきこと,そしてそれを解決するヒントをお届けします。

DBアタマアカデミー

本連載ではRDBMSの内部のアーキテクチャやストレージのしくみについて解説することで,データベースについての理解を深め,現場で役立つ知識を身につけます。

目指せ!iPhoneアプリ開発エキスパート

2008年7月,日本での展開が始まりたくさんのユーザを獲得しているiPhone。その醍醐味の1つは,オリジナルアプリの開発でしょう。本連載では,iPhoneアプリ開発について,基礎から公開の手順まで,じっくり丁寧に解説します。

Jettyで始めるWebSocket超入門

WebSocketという新しいウェブの規格についての連載を,全4回の予定でお届けします。

手軽に使える専用サーバ「さくらのマネージドサーバ」を徹底チェック

「さくらのマネージドサーバ」は1台のサーバを占有して使うことができるホスティングサービスです。今回新たにCore 2 Duo搭載のサーバを利用する「Core 2 Duoプラン」の提供が始まりました。このサービスと新プランの特徴について,同社にお話を伺いました。

スタートアップ SVG

HTML5の盛り上がりとともに再び注目を集めるSVG。古い情報と新しい情報が混在して有益な情報が埋もれがちな状況を打破すべく,厳選した情報をお届けします。

ただのメモでは勿体ない!Evernoteに人生を記憶しよう

これからEvernoteをはじめたい,もっとEvernoteを使いこなしたいという方向けにEvernoteの基本的な使い方から応用技,情報整理術やライフログなどの具体的な運用方法まで解説していきます。

OpenCVで学ぶ画像認識

OpenCVという便利なツールを使いながら,プログラミング知識以外の専門知識を必要としない形で,画像認識技術について解説していきます。

Ruby on Railsで作られたプロジェクト管理ツールredMineを使ってみよう!

Ruby on Railsで作られたプロジェクト管理ツールredMineの,環境構築からセッティング,運用方法まで解説します。

Webデザイン最新トレンド ~イマドキUIのつくりかた

“今っぽいWebサイト”を作るには何が大切か? Webデザインのポイントと実際の作り方をサンプルをまじえて紹介します。

連載一覧

企業動向

[ 企業動向一覧 ]

最近のコメント