Raspberry Piでコマンドラインを使う(乱数スロットマシン)

Raspberry Pi

コマンドラインさえあれば、パソコンでなくとも構いません。
ラズベリーパイで、コマンドラインを使ってみたいと思います。
(今年発売されたのはラズベリーパイ3なのですが、私が購入したのは、パイ2です)

スタートガイドが動画(英語)であります。
https://www.raspberrypi.org/help/quick-start-guide/

動画のキャラクタが面白いです。
このクイックスタートガイドのこちらのおじさんを見た時、
pi-man

なぜだか、ハッピーホイールのこちらのおじさんを思い出しました。
happy-wheel

似てるわけじゃないんですけど、何故なんででしょうねえ。

動画のスタートガイドにしたがって、ダウンロードしたソフトが、一致しているかどうか確認するため、SHA-1を確認してみます。
サイトに載っているSHA-1は、以下でした。
94f7ee8a067ac57c6d35523d99d1f0097f8dc5cc

~/Downloads$ openssl dgst -sha1 NOOBS_v1_9_0.zip
SHA1(NOOBS_v1_9_0.zip)= 94f7ee8a067ac57c6d35523d99d1f0097f8dc5cc
~/Downloads$  

一致しました。

ソフトも必要ですが、ラズベリーパイ本体がないと始まりません。

Raspberry Pi2の箱(左)、本体(中央)と、SDカード(右)
pi

HDMIケーブル
pi-hdmi

SDカードはこんな感じです。MicroSDといったら、黒色ばかりなのでオレンジ色が目をひきます。
pi-sd

SDカードを挿入した画像
pi-with-sd

あとは、キーボード、マウス、ネットワークケーブルを本体に、HDMIケーブルをディスプレイに接続して、MicroUSB接続で電源を入れたら(スマホやケータイの充電器と同じです)、インストーラーが起動しますので、クリックしていくだけです。
私は普段はdebianばかり使っているので、Raspbianをインストールしました。

デスクトップ画像です。

pi-desktop

中央にあるのは、ラズベリーパイのマークです。

端末ウィンドウを起動して、必要なツール類をインストールしていきます。

pi@raspberrypi:~ $ sudo passwd
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
pi@raspberrypi:~ $ su - 
Password: 
root@raspberrypi:~# apt-get install terminator

といっても、コマンド狂が必要とするのは、端末ウィンドウのみです。terminatorは、いつも使っている端末ウィンドウです。

pi-desktop2

画面中段やや右の半透明の端末ウィンドウが先ほどインストールした端末ウィンドウです。
左下は、標準で入ってる端末ウィンドウです。(もっと派手なアプリが良いのでしょうが、私が、端末ウィンドウしか興味がありませんでした……)

せっかくラズベリーパイを触ったので、記念撮影的に、コマンドラインで何かしようかと思います。
ラズベリーパイをバックに、スロットマシーンを回してみましょう。

while :;do clear;for i in `seq 3`;do
> dat=$(printf "%03g" `expr $RANDOM % 1000` |
> tr '012345689' '!!-$$$###'); banner $dat|
> awk '{printf "%-28s\n",$0}' |
> sed 's/$/|/;s/^/|    /' |
> sed 's/#/\x1b[46m \x1b[0m/g';done;sleep 1;done

最初のwhile :は、無限ループです。
forループは、乱数を3回取得するためにseq 3としています。
取得した乱数の1000の余りを求めることで、3桁の数字を取得し、012345689は、ようするに7以外の数字を適当な文字に変換し、(7が大当たりの意味です)
エスケープシーケンスで色をつけています。
あ、無限ループもつまらないので、オール7がそろったら、終了するようにしましょう。

変更するのは、:の部分のみです。

while [ "$dat" != "777" ];do clear;for i in `seq 3`;do
> dat=$(printf "%03g" `expr $RANDOM % 1000` |
> tr '012345689' '!!-$$$###'); banner $dat|
> awk '{printf "%-28s\n",$0}' |
> sed 's/$/|/;s/^/|    /' |
> sed 's/#/\x1b[46m \x1b[0m/g';done;sleep 1;done

このような動作イメージになります。(動画は早いのですが、sleep 1秒だともっと遅いです)

slot machine

私はギャンブルをやらないのでパチンコのスロットとか苦手なのですが、ラスベガスとかでやる1セントスロットを、ちまちまやる分には楽しめます。
ノーリスクハイリターンがいいですねえ。1セントしか掛けていないのに、500万円とか出てきたら、天にも昇る気持ちなのでしょうか。

思い出しました。

二人とも、ジェットで空が飛べるんでした。
失礼しました。なぜ、ラズパイスタートガイドのおじさんを見て、ハッピーホイールのおじさんを思い出したかの話です。

jet

コメント

タイトルとURLをコピーしました