[an error occurred while processing this directive] [an error occurred while processing this directive]


プログラミング
逆引き
クライアントとの通信
VisMでの通信
Factoryでの通信
WebServiceでの通信
CSP (Cache' Server Pages)
Cache'SQL
設定・性能


【広告】









ターミナルの使い方

How to use Cache' Terminal.

ターミナルの起動

画面右下のタスクトレイから、Cache'アイコンを右クリックして、Cache'メニューを表示させます。 メニューからターミナルを選択します。

新しくウィンドウが開きます。これがCache'ターミナルです。

Cache'ターミナル

命令を実行する

ウィンドウに USER> というプロンプト表示されています。
USER>
ここにWRITE 1+1と入力します。 [ENTER}キーを押します。
USER> WRITE 1+1
2
USER>
2 という結果が表示されました。これは 1+1 の結果を表示しろというコマンドを実行して、結果が表示されました。このように、Cache'ターミナルでは、コマンドを送信し、その結果を見ることができます。

ということで、いくつかのコマンドを実際につかってみましょう
USER> SET A=100

USER> WRITE A*5
500
USER>
SET コマンドは、変数に値を格納します。上の例では 変数 A に、100を代入しています。
WRITE 文で A×5 すなわち... 100×5 を計算し、結果を表示させています。

次に READ です。ユーザからの入力を変数に格納します。
USER> WRITE "あなたの名前は?>" READ name WRITE !,"こんにちは、",name,"さん",!

コマンドを入力すると、あなたの名前は?> と表示したまま、そのままターミナル画面は止まってしまいます。これは READ コマンドが入力を待っているからです。
ここでキーボードからあなたの名前を入力して、[ENTER}キーを押します。
USER> WRITE "あなたの名前は?>" READ name WRITE !,"こんにちは、",name,"さん",!
あなたの名前は?>maeda
こんにちは、maedaさん

USER>
このように READ コマンドは、入力を変数に格納します。上の例では 変数nameに、入力された値 "maeda" を格納しています。
WRITE 文中の ! は、改行記号です。

繰り返しの FOR です。これも一般的なものですね
USER> FOR i=1:1:10 Write i,!
1
2
3
4
5
6
7
8
9
10

USER>
この例では変数 i の値を 1 から 10 まで 1 ずつ増やして、続く WRITE 文を実行しています。

暴走を止める

プログラムを上手く作らないと、応答がない状態になることがあります。いわゆる「暴走」している状態です。
これを止めるにはCtrlキーを押しながら、Cキーを押します。 ( Ctrl+C と書きます)
USER> FOR i=1:1:1000000000000 Write i,!
のようにループの回数を巨大な値にして、暴走状態にしてみます。
Enterキーを押して実行すると、数字が大量に表示され続けてしまいます。数日待っていればループが終了するでしょうが、待っていられないのでCtrl+Cを押します。
暴走をCtrl+Cで止める
<INTERRUPT>と表示され、暴走状態から脱出することが出来ました。

画面出力を一時停止する

ターミナルに大量に文字が流れている場合、目視で追うことが出来ません。何が出力されているか確認するためにはログを取る方法がありますが、簡単に見る方法として画面出力を一時停止するCtrl+Sを押します。
先程と同様に、ループの回数を巨大な値にして、暴走状態にしてみます。
USER> FOR i=1:1:1000000000000 Write i,!
Enterを押し、数字が延々と表示されている状態で Ctrl+S を押します。
ターミナル出力を一時停止する
ピタっと表示が止まります。
一時停止を解除するには Ctrl+Q を押します。

ついついCtrl+Sを押してしまい、画面が動かなくなって慌てることがよくあるので、Ctrl+Qは覚えておいたほうが良いです。

Cache'ターミナルを終了する

USER> と表示されている状態で、ウィンドウ右上の×ボタンを押します。

またはHALTと入力し、Enterを押します。


[an error occurred while processing this directive] [an error occurred while processing this directive]
2012/11/19Update