今回は、これまでさりげなく使ってきた、シェルについて説明します。シェルとは、OSを扱うためのインターフェース部分です。
・シェル
https://ja.wikipedia.org/wiki/シェル
http://cmd.misty.ne.jp/basic/02.html
IchigoLatteはJavaScript OSを搭載しているので、このOSを操作することになります。MacやWindowsのようにGUI(グラフィカルユーザーインターフェース)を使って操作する方法もあれば、UNIXやMS-DOSのようにコマンドを入力して操作する方法もあります(CUI)。
GUIは多くのメモリとマシンパワーを使うので、IchigoLatteには向いていません。と言うよりも、無理といった方がよいでしょう(不可能ではないのですが、操作はかなり苦しい状態にはなります)。
IchigoLatteはキャラクターベースで操作する(CUI)を採用しています。シェルには「lash(ラッシュ)」という名前があります。
IchigoLatteの電源を入れると、最初に起動するのがシェル(lash)です。これまでプログラムの入力や実行をしてきましたが、このような処理ができたのはすべてシェルのおかげです。シェルが人間とOSの橋渡しをしてくれていたのです。
それでは、IchigoLatteのシェルの使い方を説明しましょう。用意されているコマンドは大変少なくて、5つしかありません。どのようなコマンドがあるかは、でたらめな文字を入力すると、以下のようにHELPっぽくコマンドと説明が表示されます。
IchigoLatte 1.0.0 by na-s.jp
echo |write argument.
cat :print it.
ls :show the eeprom.
vi :edit text.
ms :miniscript.
echoだけ区切り線が | になっていて、他のコマンドは : になっています。これは | が内部コマンドを示し : が外部コマンドを示していいます。実際に使う場合は、この違いを気にすることはありません。
また、コマンド名はどこかで見たような気がする、という人もいるでしょう。そうです、UNIXのシェルと同じ名前のコマンドだからです。動作もUNIXのシェル(bash)と同じです。IchigoLatteのシェルを使っておけば、将来UNIXを学習する際にも役立つでしょう。
IchigoLatteのコマンドを簡単に説明すると、以下のようになります。なお、コマンドにオプションはありません。コマンド名の後に、必要なパラメーターを指定するだけ、というシンプルな作りになっています。
echo
データを出力します。echo 123とすると画面に123と表示されます。
cat
プログラムやファイル、データなどを出力します。
ls
EEPROMの一覧を表示します。
vi
エディタを起動します。
ms
miniscriptを実行するかインタラクティブモードにします。
IchigoLatteのコマンドはシンプルですが、組み合わせて使うことができます。特にリダイレクト(出力先を変更・指定)を使えるため、少ないコマンドでいろいろなことができます。リダイレクトはUNIXのシェルにもあります。
・リダイレクト
https://ja.wikipedia.org/wiki/リダイレクト_(CLI)
UNIXのシェルには他にもパイプなどもありますが、IchigoLatteはパイプはサポートしていません。それでもリダイレクト機能があるおかげで、便利に使うことができます。
【古籏一浩】openspc@alpha.ocn.ne.jp
今年の冬は大雪が降ったところもありますが、私の住んでいるところは、例年より雪が降らずに、過ごしやすい冬でした。いつもの冬には、夜になると車の窓ガラスにバリバリに霜がつくのですが、今回の冬はなぜか霜がほとんどつきませんでした。乾燥していたのかもしれませんが……。
・みんなのIchigoLatte入門 JavaScriptで楽しむゲーム作りと電子工作
https://www.amazon.co.jp/dp/4865940936
[正誤表]
http://www.openspc2.org/book/error/ichigoLatte/
・After Effects自動化サンプルプログラム 上巻、下巻
https://www.amazon.co.jp/dp/4844397591
https://www.amazon.co.jp/dp/4844397605
・IchigoLatteでIoT体験
https://www.amazon.co.jp/dp/B06X3X1CHP
http://digiconcart.com/dccartstore/cart/info/2561/218591
・みんなのIchigoJam入門 BASICで楽しむゲーム作りと電子工作
http://www.amazon.co.jp/dp/4865940332/
・Photoshop自動化基本編
http://www.amazon.co.jp/dp/B00W952JQW/
・Illustrator自動化基本編
http://www.amazon.co.jp/dp/B00R5MZ1PA/
・4K/ハイビジョン映像素材集
http://www.openspc2.org/HDTV/
・クリエイター手抜きプロジェクト
http://www.openspc2.org/projectX/