「情報処理」1 年文 I/II クラス 9-10 ＃ 1
久野靖∗

1994.10.24

2 回目のはじめに

0

さて、今日はようやく計算機システムが使えて、実習ができます。その前に、ここのシステムの運用について説明しておきます。この建物のシステムは (建物が開いている限り) いつでも自由に使いに来てくださって結構です。演習室が 4 つあり、授業に使ってなければどこでも使えます。
他に自習室もありますので、実質的にはいつでも使えます。ただし館内での飲食と喫煙は禁止ですのでよろしく。
具体的にやっていただく内容としては、各回とも複数の実習テーマを差し上げます。そのうちのいくつかは時間内で終るでしょうが、終らなかった部分は自主的に来てやって頂けばいいわけです。直接のテーマでなくても、計算機の勉強としてなら自由に使って結構です。細かい規定は別途掲示されると思います。あと、このようなシステムは多人数が同時に使うので、使い方によっては他人に迷惑を与える可能性があります。1 その辺は常識をもって行動してください。では、はじめませう。

電源の ON/OFF

1

ではいよいよ計算機にさわって戴くことにする。ここでまず心して戴きたいのは、「計算機は、
物理的に壊さない限り (つまり椅子で殴りつけたりして破壊しない限り) 壊れることはない」ということである。2 だから安心して大胆に操作して戴いて結構である。
ネットワーク接続

CPU
mem

サーバシステムCPU

memoryCPU
mem
Ｘ端末システム
単に利用者の入力、サーバの出力を中継するだけ

図 1: login プロンプトの様子

筑波大学大学院経営システム科学専攻
たとえばどっかからもって来たマニュアル原稿をそこら中のプリンタで大量印刷して他人のプリントを妨げるとか、πを何桁計算できるか、そこら中のシステムで延々と計算を始める等。
2
ソフト的に (つまり内部に格納してある情報を) 壊してしまうことは理論的にはあるのだが、他人やシステムの情報は保護されているので、あなたがどう操作しても壊せるのは自分の情報だけである。しかも、これから使いはじめるのだから、あなたには壊してはこまるような情報は存在しないわけですね?
∗1

1

さて、皆様の前にあるキーボードと画面は、「X 端末」と呼ばれる特殊な計算機システムの一式である。特殊という意味は、その機能が「ネットワークを通じてあなたの入力を別の (サーバと呼ばれる) 計算機に送り、逆にサーバからの出力をあなたの前の画面に表示する、という決まった機能のみを実行するということである。なぜそういうことをするかというと、100 台の計算機を演習用に管理するより、十数台のサーバ計算機を 100 台の X 端末から使えるように管理する方が楽だ
し値段も安いからである。
では、まず X 端末の電源を入れて戴く。[POWER] と書かれたボタンを押せばよい。そうすると、
摩可不思議なメッセージが沢山出て来るが、落ち着くと最後は図 2 のような画面が現われるはずである。

図 2: login プロンプトの様子
演習 X 端末の電源を入れてみよ。

X 端末を使う場合には、このように電源を自分で入れて使い、終ったら電源を切って帰る。では先へ進む前に、電源の切り方を知っておこう。さっきと同様に電源スイッチを押すと、画面に「電源を切っていいですか?」というメッセージとともに、「はい」「いいえ」と書かれた四角が表示される。ここで、マウス (というのは、コードのついたせっけん箱くらいの大きさの装置) を机の上においてころがすと、それにつれて画面上で矢印 (マウスカーソルという) が動く。矢印が「はい」の上に来たところでマウスについている押しボタンを押すと、電源が切れる。では「いいえ」
は何のためにあると思う? 3
演習 X 端末の電源を切ってみよ。納得したらまた電源を入れる。
電源は最後に切ればいいのにいきなり電源の切り方を練習するのはあほらしいと思いましたか?
ちょうどこれは、渋谷見物に行く前に家から東大前の駅まで行き、電車に乗らずに一旦家まで帰り道を確認して、それから再度出直すようなものである。そうしておくと、あとで渋谷まで行って帰って来た時に駅からの帰り道が分らず迷子になるという恐れはなくなる。なにしろ、計算機の中というのはひどく迷子になりやすいので、これからもこの方式で行くのでよろしく。
大演習室以外の部屋では一部、 X 端末ではなくサーバ計算機を直接使える場所もある。サーバ
計算機では電源を入れたり切ったりせず、いつも図 2 のような画面が表示されている状態からはじめる。サーバは電源スイッチが前面にないのでそれとわかるはず。なお、サーバでも X 端末で3使用中に間違って電源ボタンを押してしまった時のため、ですね。

2

も、しばらく使わないでいると、ブラウン管の保護のため画面が暗くなる。マウスかキーボードを操作すれば復活する。

2

login/logoout

さて、図 2 の画面では、あなたは自分のユーザ名 (「g」+自分の学籍番号) とパスワード (初期値は学生証に書かれている) を打ち込むことが期待されている。なぜユーザ名やパスワードが必要か? それは、ここの計算機は誰でも自由に使っていいというわけではないので、確かに資格のある利用者が使っている、ということを確認するためである。(ほかにもあるが、分ります?) この操
作を login という。
ではキーボードに向かって、自分のユーザ名を打ち込んでいただく。間違った時には [Delete](以下 [DEL] と記す) と書かれたキーを押せば 1 文字ずつ取り消すことができる。ユーザ名を入れ終ったら、[Return](以下 [RET]) と書かれたキーを押す。一般に、計算機の世界では [RET] キーは「ここで 1 行終りだから、これを加工しはじめてほしい」という意味で使われることが多い。
[RET] を押すと今度は入力位置を示す印 (文字カーソルという) がパスワード欄に移るので、同様に入力する。ただし、パスワードの文字は入力しても表示されない。(画面をのぞき込まれてパスワードがばれるのを避けるため。) 終ったら再度 [RET]。ここでユーザ名とパスワードのいずれかに間違いがあると、「try again!」と言われてやり直しになる。やり直しになっても銀行と違って暗証番号が無効化されたりはしないので、心ゆくまでやり直してよい。
演習 login してみよ。
さて、login すると皆様の画面にはいくつかの文字が表示された四角い領域 (「ウィンドウ」な
いし「窓」と呼ぶ) が現われる。この色づかいとか配置とかはどう思いますか? 実は、login した直後の様子は自分の好みに応じて自由に変更できる。そのやり方はいずれ学ぶが、とりあえず最初の設定とは別にこのクラス用にそれなりの設定を準備したので、まずはそれを使ってもらう。その設定に変更するためには、「Kterm」という題のついた窓にマウスカーソルを入れた状態で~kuno/setup[RET]と打ってほしい。「〜」というキーはキーボードのすみっこにあって、[Shift] キーを押しながらでないと出ないと思うので注意。「done all」と表示されて、一旦さっきの (login する前の) 状態に戻る。
ここでもう 1 回 login し直すと、今度はおおむね図 3 のような画面になるはずである。
演習 setup を実行して、再度 login してみよ。
さて、先の電源のときと同様 login した状態を終る方法を説明する。それには、最初に現われた(といっても今は 1 つしかありませんが) 窓にマウスカーソルを持って行ってexit[RET]と打ち込めばよい。login したまま席を離れてしまうと、後から来た悪意のある人があなたに対してほとんどどんな悪さをすることも自由自在である (想像がつきますか?)。だから席を立つ時は必ず logout すること。
演習 logout してみよ。また login してみよ。面白いと思ったら、好きな回数だけやってよい。

3図 3: login 直後の様子

3

パスワードの変更

今 login に使ったパスワードは学生証に印刷されているので、誰にでも簡単にばれてしまう。(管理者側でもそれを知っているから、最初に設定できたわけだ。) これから、パスワードをあなた自身しか知らないものに変更していただく。まずその新しいパスワードを考えていただきたい… 考
えましたか? パスワードは安全 (つまり他人に知られにくいこと) でなければならない。具体的には次の条件を満たしていること。

• 6 文字以上の長さであること。
• 数字だけというのはだめ。
• 英小文字だけとか大文字だけとかでないこと。数字などがまざっているとよい。
• 辞書にのっている単語や、人名はだめ。特に彼/彼女の名前など簡単にばれてしまうから絶対だめ。
• あなたの個人情報 (住所、電話番号、本人や身近な人の名前、など) から類推できるものはだめ。
• しかし、覚えられるものでなければいけない。覚えられずに紙に書いてしまうと非常にあぶない。
考えましたか? 考え終ったら、変更に移ろう。
重要! パスワード変更は全システムのを 1 箇所で受け付けるため、100 人もが一度にやると失敗する。だから、次のようにして分散してやる。各自、自分の学籍番号の下 1 桁を 3 倍し、その分またはその分+30 分 (たとえば 6 だったら 6 分または 36 分) になったら変更を開始してよい。それまでは適当に他の内容をやっていること。
パスワードを変えるには、 Kterm の窓で passwd というコマンドを使う。すると、古いパスワー
ドを聞いて来るので (なぜかわかります?)、応答する。その後、新しいパスワードを 2 回正しく打
ち込むと変更される (なぜ 2 回かわかります?)。どこかで間違ったら最初からやりなおし。成功す
ると次のようになるはず。

4%xss31{kuno}1: passwd[RET]Changing NIS password for ....
Old password: ほげほげ [RET]
New password: ごそごそ [RET]Retype new password: ごそごそ [RET]NIS entry changed on ...
%xss31{kuno}2:
演習 自分の割り当て時刻になったらパスワードを変えてみる。変えたらすぐ logout して、新しいパスワードで login してみる。
もし万一、パスワードを忘れたら? その場合は 1 階の事務室に行って何とかしてもらうよう頼む。
しかしこれは恥だから、忘れないようないいパスワードを考えよう。また、どんなにいいパスワー
ドでもずっとそのままは危ない。 2〜3 月に 1 回くらいごとに変更することを習慣づけるとよい。

4

X-Window の操作

ここで、改めてシステムの概略を説明しよう。このクラスで実習に使うシステムは Unix(というのは OS…OS とは何かについては、翌週以降にやります) と X-Window(というのは説明は簡単
で、要は皆様が見えているような四角い窓を沢山表示し扱う仕組みのこと。 X 端末は X-Window
による表示専用の特殊な計算機システムということになる) を組み合わせたシステムで、この上で各種の内容をを体験していただく。
その第 1 歩として、 X-Window でいくつもの窓を整理して扱うやり方を覚えておこう。皆様の画面は、おおよそ図 3 のように見えているはずである。さっきからお世話になっている、Ktermの窓を「端末窓」ということもある。それは、この窓が昔の計算機システムにつきものだった「端末装置」(要するにテレビとキーボードの組) の生まれ変わりだからである。この中にマウスカー
ソルを入れて、キーボードから指令を打ち込むことで様々な作業ができる。
その他に、画面の右上にいくつかの小さい窓が見える。まず丸いのはもちろん「時計」で、腕時計を見なくても時間がわかる (?)。その隣の郵便受けの形の窓は、電子メールが到着した時に絵柄が反転して到着を示してくれる。電子メールは来週あたりやる予定である。その隣は「TWM…」と書いてあるが、要は窓の一覧で今は 3 つ窓があることを示す (一覧自身の窓は含まれないのに注意)。
次に、窓の操作方法を説明しておこう。基本的な使い方は次の通り。

• 窓の上の名前が表示されている部分 (タイトルバー) の中央付近にマウスカーソルを持って行き、マウスボタンをどれでもいいから 1 つ押し下げ、そのままの状態でマウスを移動する。
すると窓枠がマウスカーソルと一緒に移動する。ボタンを話すと枠の位置に窓全体が移動する。
• タイトルバー右側の、四角が 3 個ずれて重なった模様の部分にマウスカーソルを置き、マウ
スボタンをどれでもいいから 1 つ押し下げ、そのままの状態で、マウスを窓枠の外側方向に移動する。すると、窓枠が今度は拡大する。やはり適当な位置でボタンを離すと窓の大きさが枠に合わせて変わる。なお、小さくしたい場合には一旦枠を大きくしてから小さくなる方向に移動する。
• タイトルバー左側の、日の丸マークのところにマウスカーソルを合わせてどれでもボタンを押すと、窓は「アイコン」と呼ばれる小さい絵柄に変化して画面右下に収まる。アイコンの上でマウスボタンを押すと、元に戻る。これは窓が沢山できてごちゃごちゃになった時整理するために使う機能である。
5

演習 端末窓の位置や大きさを変えてみよ。またアイコンにしたり戻したりしてみよ。
時計や郵便箱にはタイトルバーがないけど? と思われたかも知れない。4 それには、メニューを使う。マウスカーソルを、どの窓でもない「背景」の位置に移動して、マウスの左ボタンを押して下げてみて戴きたい。すると、画面にいくつかの機能名が並んだ箱が表示される。そのままの状態
でマウスを下に移動すると、機能名が順に反転する。ここでたとえば「Move」が反転した状態でボタンを離すと、マウスカーソルが移動機能を表す形に変化する。そこで時計や郵便箱の上に持って行ってマウスボタンを押し下げ、あとは前と同様にして移動できる。大きさ変更は「Resize」でできる。この他にも、重なり順を変えたり、画面全体を書き直したりといった機能がある。
演習 左ボタンメニューの機能をひと通り試せ。
今度は、中ボタンでメニューを出してみる。ここには「Kterm」と「Mule」という 2 つの項目しかないが、それぞれ別の種類の窓ができる。Kterm の窓は、さっきから色々やっているように、その中で何か指令を打ち込んで最後に [RET] を押すとただちにその指令が実行されるようになっている。たとえば、その中で「exit[RET]」を実行すると、窓自体が消える。 (ただし、最初の 1
個目だけは、ご存じのようにそれを消すと logout する。)
Mule の窓は (それが何であるかは後で説明するとしてとりあえず)、その中でControl+X Control+C(Control キーを押しながら x と c のキーを押す)

を打つと消える。なお、この後も「Control を押しながら〜を押す」というのは山のように出てくるので、以下では「^X」のように略記させていただく。Kterm と Mule のどちらの窓でも、とにかく現在マウスカーソルの入っている窓にキーボード入力が行くということに注意。つまり、マウスが窓の間の切り替え機能を持つというわけである。
演習 端末窓と Mule の窓を適度に沢山作り、大きさや位置を変えて配置してみよ。気が済んだら最初の端末窓を除いてすべて消せ。
最後に右ボタンメニューが残っているが、これは X-Window の説明の時まであまり役に立たない。ただし 1 つだけ。これらのメニューを出したり、窓の大きさなどを操作するのは twm と呼ばれるものが担当している。右ボタンメニューの「Exit twm」を選ぶと twm が消えてしまい、これらの機能は使えなくなる。たまに何かの間違いでこうなってしまう場合があるので、その場合は最初の端末窓の中で

twm &[RET]を実行すれば元に戻る (というか、twm を復活させられる)。
演習 twm を終らせて、窓操作ができなくなることを確認せよ。気が済んだら復活させてみよ。うまく復活できなければ、 logout して login し直せばよい。

テキストエディタ

5

さて、ここまでの所では login/logout、パスワード変更、窓操作など計算機を使うこと自体に付随する事柄ばかりで、実際に役に立ちそうなことはまだ何もならっていない。それではつまらないので、そろそろ何か使える話に進もう。ここで、前回も出てきた図を再掲する。利用者から計算機への入力というのは、思わないって? 計算機の世界では、A に対して何かできたら、それと類似した B に対しても同じことができる、というのが重要。これを「直交性」という。
46

入力＝データ、コマンドデータが大量だと打ち込むのがつらい…
CPU

memory
利用者
計算機
出力＝結果、付随情報

図 4: 計算機との対話 (再掲)

a. 計算機に加工してもらうためのデータ
b. 計算機にどんな加工をしてもらいたいかを示す情報 (指令)の 2 種類があるといいましたね? ところで、a のデータだが、その量がとても多いくて、しかも繰
り返し参照する場合、それを加工のためにいちいち打ち込んでいるのでは手間が大変である。ではどうしたらいいだろう? (図 4)
答は、最初の一度だけ打ち込むが、打ち込んだときに名前をつけて計算機に覚えさせておき、あとはその名前で参照する、というものである。このような、「打ち込んだデータに名前をつけたもの」を「ファイル」と呼ぶ。実世界のファイルは書類の綴じたものだけど、それとはだいぶ趣が違うので注意。計算機でいうファイルはどちらかというと、何かを原稿用紙やメモ紙に書き付けたものに近い。そうしておけば、後で必要になったときもう 1 度考えたり思い出したりしなくても済むでしょう? (図 5)
ファイルの指定ファイル内容の修正指示「 test1.txt を使え。
その〜を〜のように直せ。」
CPU

memory利用者
ファイル
test1.txt

This is..
That...

図 5: ファイルの意味と効用
そしてもう 1 つ、計算機のファイルは後から内容を直すのが自由である。5 この、ファイルを打ち込んだり後から直したりするための機能を「テキストエディタ」 (文書編集子) と呼ぶ。以下こ
こでは Mule と呼ばれるテキストエディタを学んでいただく。
では、さっそく計算機のファイルを作ってみよう。それには、先ほどやったと同様に、背景で中ボタンを押して Mule の窓を開き、そこにマウスカーソルを置く。最初は何やらメッセージが表示されているが、それは無視して「This is a pen.」などと打つと、メッセージは消えて窓のなかに打ち込んだままの文字が入る (図 6) 6 「[RET]」を打つと…何もおこらず、文字カーソルが次の行へ進む (この辺が Kterm の窓とは違うな)。実は、Mule の上では「改行」というのも (目には見え5
6

手書き原稿も消しゴムや赤入れで直せるけど、だんだん汚くなって最後は書き直すことになりますね。
大文字を入れるには、Shift を押しながら英字キーを打つ。キートップの上段に書かれている記号なども同様。

7ないが) 単なる 1 つの字である。どの時点でも、打ちまちがえた字を消すには [DEL] キーを押せばよい。いくつでも、また改行文字でも消してやり直すことができる。
演習 図 6 のように Mule の窓で打ち込んでみよ。物足りなければ、もっと好きなだけ沢山打ち込んでよい。窓の大きさ一杯になったら、さっきやったように窓を大きくしてやればよい。

図 6: Mule で打ち込んでいる様子
さて、次に「名前をつけて保存する」方に進もう。それには Mule の窓の中で「^X^W」を打つ(というのは、Control キーを押しながら x と w を押すのでしたね?)。すると窓の下の方に「Write
to file:」と表示されるので、例えば「test1.txt[RET]」のように応答する。するとファイルへの書き出しが起きる。このように、何事も Mule の窓で打ち込んだだけではだめで、名前をつけてファイルに書き出してはじめて保存されたことになるので注意。
演習 今打ち込んだ内容をファイルに保存せよ。終わったら^X^C で Mule を終了。
さて、今度は内容の修正に進もう。再び Mule の窓を出し、今度はいきなり「^X^F」を打つ。すると「Find file:」と聞いてくるので、さっき保存したファイルの名前を「test1.txt[RET]」のように応答する。すると、画面に先のファイルの内容が現れる。ところで、やたらと Control だらけだと思いませんでした? Mule では、普通の文字はどれも「打ち込む内容」つまり「Mule にとってのデータ」として扱われるので、「Mule にとってのコマンド」はすべて Control キーつきで打
ち込むという区分になっているのだった。
さてここで、文字カーソルは表示されたファイルの先頭にありますね? これからファイルの内容を修正するわけだが、そのためには修正したい位置までカーソルを移動する必要がある。そのためには次のコマンドを使う。

^F
^B
^N
^P

(forward) --- カーソルを前方 (右) へ 1 文字移動
(backward) --- カーソルを後方 (左) へ 1 文字移動
(next line) --- カーソルを下へ 1 行移動(previous line) --- カーソルを上へ 1 行移動演習 これらのキーを打ってカーソルを移動してみよ。
次に、カーソルの付近にある文字を消す方法として次のものがある。

^D (delete) --- カーソルの位置にある文字を消す[DEL] --- カーソルの直前にある文字を消す
8

では、代わりに新しい内容を打ち込むには? それは単にその文字を打ち込めば入る。また、改行も文字だから、それを消せば 2 つの行がくっつくし、打ち込めばそこで行が分かれる。ともあれ、
任意の位置で文字を消したり新しい文字を追加できるのだから、これでファイルに好きな修正ができることはお分かりですね?
演習 最初の 3 つの文を過去型に直せ。また fine を snow に直せ。そのほか、好きなところを直したり、途中に新しい文 (や行) を挿入してみよ。
最後に、その結果を再びファイルに保存する。さっきと別のファイルに書くのなら^X^W だが、同じファイルに書き戻す場合は^X^S でよい。ここで^X で始まるコマンドを整理しておこう。

^X^F
^X^W
^X^S
^X^C

(find file) --- ファイル名を指定して編集を始める(write to file) --- ファイル名を指定して書き出す(save buffer) --- ファイル名を指定せず元のファイルに書く
Mule を終了する

あとは「おまけ」だが、ファイルが大きくなってくると^F/^B/^N/^P であちこち移動したり、^D/[DEL]
で 1 文字ずつ消すのはたるくなってくる。そう感じたら、次のものも使うとよい。

^V--- 1 画面ぶん下へ行く[ESC]v --- 1 画面ぶん上へ行く^A (ahead of line) --- 行の先頭へ行く^E (end of line) --- 行の末尾へ行く^K (kill line) --- カーソルから行末まで消す。行が空っぽなら行全体を消す^Y (yank) --- ^K ないしその連続で消したものを戻す。
場所を移動して戻せば移動になる。繰り返し戻すことでコピーにもなる
演習 編集結果を^X^S で書き戻し、^X^C で Mule を終われ。再度 Mule を動かし、同じファイル
を^X^F で読んで、直っていることを確認せよ。今度はまた少し内容を修正し、^X^W で別のファイル (たとえば test2.txt に保存せよ。
課題 1 自分の好きな英語の歌を 1 つ選び、その歌詞を Mule で打ち込んでファイルに保存せよ。それらしいファイル名をつけること。

6

キーボードをかっこよく打つには…

計算機屋の場合、キーボードはいやでも長時間使うので自己流だろうと何だろうと最後には速く打てるようになる。だからどうでもいいのだが…短時間で速く打てるようになりたければ、次のことを守る。

• まず、普段はかならず各指をホームポジションに置くようにする。
• 各指の分担を覚える。たとえば、左手人差し指だと、ホームポジションの F、その上の R、4、下の V、そしてそれらの隣の G、T、5、B が受け持ち。
• まずはアルファベット 26 文字とピリオドとカンマの受け持ちをそらで打てるようにする。それには、ハンカチを手の上からかぶせてしまい、キーボードの絵を見ながら手探りで打つ。
間違った場合はそれは無視して打ち直す。
• これを我慢して 1 時間くらいやっていると、だいたい英字は覚えてしまう。これだけでも充
分かっこいい! あとは、記号や数字は「どの英字のちょっと上」とかいう感じで覚え、なるべく画面だけ見て手元を見ないようにして打つよう心がければタッチタイプが完成する。
9

だまされたと思ってやって見ることをすすめる。そのため、図 7 に (皆様の X 端末とはちょっと違うけれど) キーボードの絵をつけておく。
F1

F2

F3

F4

F5

F6

F7

F8

F9

F10

F11

F12

|
\

Delete

Esc

!
1

@
2

#
3

$
4

%
5

^
6

&
7

*
8

(
9

)
0

_
-

+
=

Back SpaceTab ← Q

W

E

R

T

Y

U

I

O

P

Control

S→

Shift↑

A
Z

D
X

F
C

G
V

H
B

J
N

K
M

L
<
,

{
[
:
;

>
.

}
]
"
’

?
/

Retrun~‘

Shift↑Line
Feed

Com Alt
pose Graph

Caps AltLock

図 7: キーボードの配置図

ファイル関係のコマンド

7

さて、このように Mule でファイルを作ったり修正できるようになったわけだが、自分がどんな名前のファイルを持っているかなどすぐに忘れてしまうのが普通である。また、ファイルの中身をプリンタに出したいこともある。そのような場合は、 Kterm の窓で各種のコマンドを使うことになる。
その一番基本は、ls(list files) であり、このコマンドを単に「ls[RET]」のように実行すると、自分の持っているファイルの一覧が表示される。

xss23{kuno}5: ls
Wnn4/
bin/
xss23{kuno}6:

test1.txt

test2.txt

ところで、Wnn4/のように自分に覚えのないものも見えるが…これらは管理者が初期設定として用意してくれたものなので、とりあえず触らないでおく。実は、これ以外にも初期設定用ファイルは一杯あるが、それらはすべて「.」で始まる名前になっている。ls は通常は (初期設定ファイルの山が見えるとうるさいので) これらを表示しないが、「ls -a[RET]」とした場合にはこれらも表示する。

xss23{kuno}6: ls -a./.Xdefaults../.cshrc.Xauthority.emacs.login.mh_profile.twmrc.xsession*
Wnn4/
bin/

test1.txt
test2.txt

次に、ファイルの中身を確認するのに、いちいち Mule を動かさないでも Kterm の窓だけでやることができる。それには「cat ファイル名 [RET]」による。7% cat test1.txt

cat はファイル名を入れ忘れると一見何も反応しない状態になってしまう。そうなった場合には Control-C を打てば中止できる。
7

10

cat は簡便でいいのだが、ファイルがちょっと長いと画面が「流れて行って」読めなくなってしまう。そのような場合は代わりに「less ファイル名 [RET]」を使う。less を使うと、1 画面が一杯になるとそこで止まってくれる。先をみたい場合は [SP](スペースバー) を打つ。また、[BS] を打
つと 1 画面戻ることができる。いつでも「q」を打つとそこでやめることができる。
演習 ls で自分の持っているファイルの名前を確認し、 cat で内容を表示してみよ。less ではどうか。
演習 ls -a で初期設定ファイル群の名前も調べ、いくつか cat や less で内容を表示してみよ。
演習 less /usr/X11R5/lib/X11/rgb.txt[RET] により、X-Window の色名一覧ファイルを眺めてみよ。

8

プリンタとプリンタ出力

ファイルの中身をプリンタに打ち出したい場合には「lwp ファイル名 [RET]」でできる。さらに、文字の大きさや紙の向きも変更できる。

lwp -S12 test1.txt[RET]--- 12 ポの文字でlwp -l -S20 test1.txt[RET] --- 20 ポ、紙は横使い
lwp -S16 -h- test1.txt[RET] --- 16 ポ、ヘッダを出さない
プリンタには各自の出力がまざって出るが、ヘッダ (ページ番号、ファイル名、ユーザ名などが表示されている行) を見れば誰の出力か分かる。ただしヘッダなしを指定した場合は内容で判断のこと。
どのプリンタにでるかは、各 X 端末に貼ったラベルに書いてある。プリンタは 7 台しかないので、一斉に出すと当然行列になる。その様子を見るには「lpq[RET]」でできる。自分のが行列の先頭になって出る頃を見計らって取りに行くとよい。lpq では各印刷ファイルごとに番号が割り振られているのが見えるが、途中で気が代わってキャンセルしたくなった場合にはその番号を使って「lprm 番号 [RET]」とすれば取り消せる。
また、画面ハードコピーを出したいこともあると思う。ここでは当面、全画面ではなくどれか
1 つの窓の中身を打ち出す方法を説明しておく。それには、まず「hardcopy[RET]」と打ち込み、マウスカーソルが十字形になるので、打ち出したい窓の上にマウスカーソルを持って行ってマウスボタンをどれでもいいから押す。すると、その窓の内容がプリンタに出力される。
課題 2 自分の打ち込んだファイルをどれか 1 つ、プリンタに出してみよ。また、窓のハードコピー
も出してみよ。いずれも、lpq コマンドを用いて順番を確認してみること。

A

本日の課題

今日は、打ち出しまではできたはずなので、打ち出したものを提出してください。歌詞の打ち込みは後まわしでもかまいません。なお、整理の都合上これ以降の提出物は次の事柄を守ってください。守られていない場合には採点の公平を保証しません。

• 提出する紙が 2 枚以上にわたる場合にはホチキスで綴じること。
• 少なくとも一番最後の紙は裏が白紙 (印刷されてない) であること。
• その白紙部分に次のものを上 (綴じた側) からこの順で記入すること。
・ 提出日付、四角く囲ったレポート番号、学籍番号、氏名 (以上 1 行に)

11

・ アンケートの回答
・ それ以下の余白部分は好きに利用してよい
本日の課題のレポート番号は 1A です。アンケートは次の通り (そんなに大量に書く必要はありま
せん)。

Q1. 今日の内容は難しかったですか? 難しいとすれば、どの辺ですか? またどこをもう少し工夫したらよくなると思いますか?
Q2. 今日使ったようなシステムの使用経験はありますか? また、キーボードは打てますか? もしなければ、タッチタイプで打てるようになりたいですか?
Q3. 本日の全体的な感想と今後の要望をお書きください。

B

次回までの課題

次回までの課題は次のものとします。レポート番号は 1B です。
課題 1 歌詞の打ち込み。
課題 3 自分の初期設定ファイル.Xdefaults、.twmrc、.xsession の中には、色の名前を指定している部分が何箇所もある。その部分を Mule を使って別の色に修正して、自分の好みの配色にしてみよ。色の名前として許されるものは、前掲の rgb.txt に書かれているものである。なお、修正した後 login し直さないと色は変化しません。
注意! 特に.xsession を修正し損なうと、login が正常に動かなくなることがあります。そのような時は、login 時に [RET] の代わりに [F1] と記されたキーを使って login し、~kuno/setupを再度実行すればすべて元に戻ります。
課題 1 の内容は打ち出してください。課題 3 は打ち出しようがないので、以下のアンケートに記
入して頂ければ結構です。

Q1. 課題はどれくらい大変でしたか? 特に色をどのように工夫しましたか? キーボードはタッチタイプできるようになりそうですか?
Q2. 課題に対する感想と今後の要望をお書きください。
課題は、次回授業開始時刻までに、レポートボックスに提出してください。

C

今後の資料の入手について

資料を当日より前に入手したいと思われるのは当然だと思います。そこで、前の週の後半 (木曜くらい? にできるよう努力します) 以降に~kuno/handsout[RET]
を (Kterm の窓で打ち込んで) 実行すれば資料がプリンタに打ち出されるように設定するつもりです。準備ができてない時や、授業当日の正午以降はプリントできない旨表示されます。lpq でプリンタの混雑を確認してから実行するようにしてください。

12

D

先週の演習問題の解説 (一部)

D.1

10 進数から 2 進数への変換

2 進→ 10 進はどの桁が何の位かを書いて足し合わせればいいので簡単。10 進→ 2 進は、実は下の桁から求めていくとよい。たとえば「23」を 2 進にする場合、それは奇数だから一番下の桁は1 に決まっている。言い替えれば
23 ÷ 2 = 11 … 1← (1)ということは、残った上の桁は 11 を 2 進標記で表したものになればいいわけですね。これまた同様に、11 は奇数だからその一番下 (最初の 23 でいえば下から 2 番目の桁) は 1。つまり

11 ÷ 2 = 5 … 1

← (2)

以下同様に

5 ÷ 2 = 2 … 1
2 ÷ 2 = 1 … 0
1

← (3)
← (4)
← (5)

で、最後に 1 が残った。この 1 は 2 進表記しても 1 に決まっている。ということで、(1)〜(5) を順に (下の桁から並べて) 答えは 10111 になるわけです。

D.2

2 進数の引き算

要は、図 8 のように「引けなければ借りて来る」ということが解れば簡単。十進法だと、100 から 1 引くと 99 になるけど、二進法だと 100 から 1 引くと 11 になる。(借りて来る場合というのは、0 から 1 が引けなくて借りるのに限られるから実は十進法よりずっと簡単。 )
借りて来る

-)

11001100
00111001-)

11001100
00111001

借りて来る

-)

11001100
00111001

011
１引けない

-)

010011

これは引ける

借りた１から１引いて０

図 8: 引き算の様子

D.3

銀行の払い出しシステム

私がいつも使うのは三菱銀行ですが、まず払い出し機の前へ来て…

1. 「払い出し」のボタンを押す。 (入力)
2. 「カードをいれて下さい」と表示される。(出力)3. キャッシュカードを入れる。 (入力)
4. 「暗証番号を入れて下さい」と表示される。 (出力)
5. 暗証番号 4 桁を入れる。(入力)1311001100
00111001
10010011

6. 「金額を入れて下さい」と表示される。 (出力)7. 金額を入れ、最後に「円」ボタンを押す。(入力)
8. しばし待つと、お金と伝票が出てくる。 (出力)というわけで、4 サイクルあるようですね。暗証番号の各桁とか、金額の各数字を分けて数えるともっと大変ですが。

14