paloma blog

NWエンジニアやってます。主に自宅環境のお遊びを書きます。Pythonもちょっと。タイトルは好きなカクテルから。

ワンライナーシェル芸旗揚げゲーム

最近シェル芸botで絵文字を使ったシェル芸が流行りのようなので私もちょっとやってみました。

f:id:paloma69:20180209001916p:plain

ワンライナー旗揚げゲーム書いてみました

for a in {1..20} ; do echo -e "\U269"{0,1}{あげ,さげ}{て,ないで,ない,る} | tr " " "\n" | shuf | head -1 ; done
  • 結果
    • メインPCで実行したので名前がガッツリ出ちゃってますがお気になさらず
    • ubuntu16.04 LTS Desktopです
masashi@PC-ubuntu:~$ for a in {1..20} ; do echo -e "\U269"{0,1}{あげ,さげ}{て,ないで,ない,る} | tr " " "\n" | shuf | head -1 ; done
⚑さげて
⚐さげて
⚐あげて
⚐さげる
⚐あげる
⚑あげないで
⚐あげる
⚐あげる
⚑あげて
⚐さげる
⚑あげて
⚐さげる
⚐あげないで
⚐さげる
⚑あげない
⚑さげる
⚐あげないで
⚐あげる
⚐あげない
⚐あげない

色に偏りがありますが、まあいいでしょう。
ブレース展開ってあまり使ったことがなかったのですがこの用途にハマりそうだったので使ってみました。

masashi@PC-ubuntu:~$ echo -e "\U269"{0,1}{あげ,さげ}{て,ないで,ない,る}
⚐あげて ⚐あげないで ⚐あげない ⚐あげる ⚐さげて ⚐さげないで ⚐さげない ⚐さげる ⚑あげて ⚑あげないで ⚑あげない ⚑あげる ⚑さげて ⚑さげないで ⚑さげない ⚑さげる

いい感じでパターンができました。

あとはシェル芸のお作法的な感じで改行コードへの変換とシャッフル+1行だけの出力でランダム出力の完成です。
あまり回すのも何なのでとりあえず20回のループにしています。

これで出力はできたので、あとはsleepを挟めば旗揚げゲームもできちゃいます。
(コンソール見ながら一人でやってるとやばい絵面になりそうですが)

ちなみにシェル芸botも対応してくれました。

f:id:paloma69:20180209002758p:plain

シェルを書きながら出力を見ていたらなんだかSFCクレヨンしんちゃん(1作目)の旗揚げゲームを思い出しました(笑)