Mac OS X上でREALbasic3.0a11Carから実装されたShellクラスを使ってみました。
Function test() As String
Dim sh As Shell
Dim buff As String
Dim cnt As Integer
Dim i As Integer
sh = New Shell
If sh Nil Then
sh.Execute "ls"
If sh.ErrorCode = 0 Then
buff = sh.Result
cnt = CountFields(buff, Chr(13))
For i = 1 To cnt
ListBox1.AddRow NthField(buff, Chr(13), i)
Next
End
End
End Function
これは何をやっているのかというと、単純にlsしてるだけです。でも、これってRbに大きな可能性を与える仕組みですよね? だって、場合によってはshellコマンドにRbのガワを被せるだけでプログラムができちゃうってことじゃない? 便利だよねぇ、これってば。
今日は部屋の壁3箇所に穴を空けて、隣室にあるG3/350とプリンタをLANに収容しました。これでMac2台で構成されたIntra-netの準備は完了。今はこの回線がルータにつながっていますが、しばらくするとPCルータとリプレースします。あ、さらにハブがいるじゃん(笑)。フレッツになったので、24時間使えることは使えるんだけどね。
日曜日は「笑う犬」ですな。遠山景織子ちゃんってば、いつまでたっても素人っぽさが抜けなくて可愛いです。たまらん(笑)。
REALbasic3.0a11Car:Mac用開発環境REALbasicの2000.10.30現在での最新アルファバージョンのカーボン版。カーボン版はMac OS X上で動作します。
Shell:UNIXシステムにおけるガワ。Mac OS Xではtcshというshellが使われているけど、Red Hat Linuxではbashが標準。ちょっとずつ違うけど、ほとんど同じ。
ls:あるディレクトリ(フォルダ)の中をリスト表示する命令。フォルダを開くとその中のフォルダやファイルが表示されるのは、lsコマンドの結果をグラフィックで表示しているだけ。
G3/350:MacintoshのG3/350という機種。
LAN:Local Area Network。パソコンやプリンタなどをケーブルでつないで、データや機材を共有する仕組み。自宅は10Base/Tという転送速度が10Mbpsの(1秒間に10メガビット)、最もお安い規格で構成してます。
Intra-net:Inter-netの打ち間違いではなく、インターネットの仕組みを使って、LANを構築したもの。
ルータ:ここで言っているのは正確にはダイヤルアップルータといって、1本の電話回線を複数のコンピュータで共有するための機械。ルータは、データのやりとりをするときにどこにデータを送るかを規約に従って決定します。これをルーティングといいます。
PCルータ:パソコンにルータの役割をさせることもできます。私が作ろうとしているルータは秋葉原で6,000円で買ってきた中古PC。こんなので十分なのです。
ハブ:LANを構築するには一般的にEthernetという規格で構築します。Etherは「エーテル」のこと。「媒体」を上手く表現した言葉ですね。で、ハブというのは集線装置のことで、それぞれのパソコンから出たケーブルをハブでまとめて、ルータなどに接続します。
フレッツ:NTTが始めた、回線の速度向上が間に合わないのを誤魔化すためのサービス(笑)。24時間接続しても月々4,500円なんだけど、回線速度は64Kbps。しかもベストエフォートといって、「努力はするけど、回線速度を保証はしないよ」という、ちょっとずるい契約形態。LANの10Mbpsという速度と比較するとすんごく遅いです。
笑う犬:CX(フジテレビ)のバラエティ番組。深夜枠からゴールデンタイムに進出したら、途端に面白くなくなった(笑)。