フラミナル

考え方や調べたことを書き殴ります。IT技術系記事多め

シェルで紙芝居っぽくちょっとづつ文字を表示する

これを実現したい!

Gatekeeperのハンズオンをやっていたらシェルでデモが行われていて裏側が気になったので追っかけてみました。するとdemo-magicというスクリプトが使われていたので紹介です。

このスクリプトの中を見ていくと段々表示するところはpvというツールが動いていることがわかりました。pvはパイプ経由でのコマンド実行時にデータの転送状況を可視化するツールなのですが、オプションの一つにデータの受け渡し量を制限しながら行うというものがあります。

demo-magicではこれをうまく使って秒間に出力する文字数を制限しています。

叩いているコマンドはこちら。

clear; echo "デンマークの国民的文学者。オーデンセの貧しい靴直し屋に生まれ、幼少の頃から父にアラビアンナイトなどの物語を読み聞かされ育った。その父が早くに亡くなったため学校を中退せざる をえず、俳優を志してコペンハーゲンへ行くものの、途中で挫折する。苦しい生活の後、政治家コリン の援助もあり大学を卒業する。国外を遊学し、その際のイタリアでの印象と体験より「即興詩人」を著 す。1835年「童話集(お話と物語)」を発表し、以後死ぬまでの四十年で一五〇余編の童話を書いた。 グリムと童話文学の始祖として並び称されるが、グリムと違い、創作童話の多さが特徴的である。他の 代表作 「絵のない絵本」「わが生涯の物語」(大久保ゆう)" | pv -qL 100