千葉大学普遍教育情報処理科目:プログラミング入門

生物生産科学科 担当 國分 尚(5月28日、6月4日、6月11日)


<-- 第5章目次第7章 -->


6.その他

● よく使うUNIXコマンド

cat ファイル名
ファイル名のファイルを画面に出力する。
cd ディレクトリ名
カレントディレクトリを移動する。
ls ディレクトリ名
ディレクトリの内容を表示する。ディレクトリ名を省略するとカレントディレクトリを表示する。ls -F とするとファイルとディレクトリの区別がつく。ls -l とするとファイルの属性やサイズがわかる。
mkdir ディレクトリ名
ディレクトリを作る。
pwd
カレントディレクトリのパス名を表示する。

● Rubyプログラムファイルに実行権限を与える。

プログラムの先頭に次の行を書き加え、ファイルの属性を変えればファイル名を与えただけでプログラムを実行できる。


#!/usr/local/bin/ruby

これはプログラムを翻訳して実行するRubyインタープリタの場所を示すもので、利用するシステムによって異なることがある。千葉大学の教育用システムや多くのLinuxはこの場所だがMacOS Xでは/usr/bin/rubyとなる。


keyaki% chmod a+x aProgram.rb

上記のコマンドだとすべてのユーザーがこのプログラムを実行できるので、自分以外のものが実行するのを防止するにはchmod u+xとする。「キャンパス情報リテラシー」p. 83参照。上記のコマンドでファイルの属性を変更したらls -lで実際に属性が変わっていることを確認する。

以上の操作のあとは


keyaki% aProgram.rb

とするとプログラムを実行することができる。

Linuxなど一般のUNIXシステムではPATH環境変数にカレントディレクトリが入っていないためにこのままでは実行できない。その場合はファイル名の前に ./ を付けることが必要となる。セキュリティ上の理由からこのようになっているのだが、もし毎回./をつけるのが面倒であれば環境変数のPATHに./を付け足せば省略できるようになる。

7.参考文献

● プログラミング一般の入門書

伊藤華子.2002.コンピュータプログラミング入門以前,第2版.毎日コミュニケーションズ.(土井・筧,1987の代わりになる本だと思うのだが、実物は相変わらず見ていないので断定できない。)

前橋和弥.2004.センス・オブ・プログラミング! 技術評論社.(久しぶりに良い入門書が出た。買った日(04.11.11)に全部読んでしまった。土井・筧の代わりをかなり果たし、さらにそれ以上の内容を持つ本。この本があれば私の書いたこの拙い入門編は不要だが、例題はJavaとCである。)

● Ruby入門書

高橋征義・後藤裕蔵.2002.たのしいRuby Rubyで始める気軽なプログラミング.ソフトバンク パブリッシング.(プログラム例が無味乾燥だが、Rubyの基本を習うにはよい。アルゴリズムの勉強にはならない。)

● 言語リファレンス

まつもとゆきひろ.2000.Rubyデスクトップリファレンス.オライリー・ジャパン.(文法、キーワード、基本クラスなど、Rubyのプログラミングに不可欠。)

8.用語集

環境
コンピュータ用語で環境とはコンピュータを利用する時に使うOSやアプリケーションソフトウェアをまとめたものを言う。とくに、コンピュータプログラミングについて言うことが多い。例えば、LinuxのC++プログラミング環境、WindowsのRubyプログラミング環境など。

目次

  1. アルゴリズムとプログラム
  2. プログラミング言語
  3. Rubyプログラミング入門
    1. 環境を整える
    2. エディタの使い方
    3. Hello World!
    4. 台形の面積を求める
    5. Rubyプログラムの実行
  4. Rubyプログラムの構造
    1. 文、数値、文字列、変数、代入
    2. データの型、あるいはオブジェクトの種類
    3. 配列とハッシュ
    4. 制御構造
    5. アルゴリズムからプログラムへ
    6. オブジェクトとメソッド
  5. ファイル処理と正規表現
    1. Genbankの出力を加工する
    2. ファイルからデータを読み込む
    3. ファイルにデータを書き込む
    4. 正規表現
  6. その他
  7. 参考文献
  8. 用語集
  9. 練習問題の解答例
  10. 索引

情報処理のトップへ戻る


2004年11月11日作成、2006年4月18日更新

國分 尚
hkokubun@faculty.chiba-u.jp