Cowsay コマンドを使用して、Linux ターミナルに ASCII グラフィックを表示します!このコマンドは、選択した文字列を、牛が言っている/考えているようにグラフィック形式で表示します。
Linux ターミナルを楽しむための別の記事。以前は、Linux ターミナルで派手な ASCII バナーと行列落下コードを作成する方法を見てきました。この記事では、選択したメッセージとともに考える牛の ASCII 画像を端末に表示する、cowsay という別の小さなユーティリティについて説明します。 Cowsay は、motd (今日のメッセージ) でユーザーに目を引くメッセージを書くのに便利です!
man ページから「Cowsay は、ユーザーが提供した何かを言っている牛の ASCII 画像を生成します。引数なしで実行すると、標準入力を受け入れ、約 40 列で与えられたメッセージをワードラップし、与えられたメッセージを言っている牛を標準出力に出力します。 」 それはカウセイの機能を説明しています。実際に見てみましょう!
# cowsay I love kerneltalks.com ________________________ < I love kerneltalks.com > ------------------------ \ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
😀これがターミナルでの外観です!すごいね?
インストールはとても簡単です。 Cowsay パッケージを Linux にインストールするだけです。参考までに、AWS EC2 Linux サーバーのインストール ログを以下に示します。
# yum install cowsay Loaded plugins: amazon-id, rhui-lb, search-disabled-repos, security Setting up Install Process epel/metalink | 12 kB 00:00 epel | 4.2 kB 00:00 http://mirror.math.princeton.edu/pub/epel/6/x86_64/repodata/repomd.xml: [Errno -1] repomd.xml does not match metalink for epel Trying other mirror. epel | 4.3 kB 00:00 epel/primary_db | 5.9 MB 00:09 rhui-REGION-client-config-server-6 | 2.9 kB 00:00 rhui-REGION-rhel-server-releases | 3.5 kB 00:00 rhui-REGION-rhel-server-releases-optional | 3.5 kB 00:00 rhui-REGION-rhel-server-rh-common | 3.8 kB 00:00 Resolving Dependencies --> Running transaction check ---> Package cowsay.noarch 0:3.03-8.el6 will be installed --> Finished Dependency Resolution Dependencies Resolved ============================================================================================================================================================= Package Arch Version Repository Size ============================================================================================================================================================= Installing: cowsay noarch 3.03-8.el6 epel 25 k Transaction Summary ============================================================================================================================================================= Install 1 Package(s) Total download size: 25 k Installed size: 31 k Is this ok [y/N]: y Downloading Packages: cowsay-3.03-8.el6.noarch.rpm | 25 kB 00:00 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Installing : cowsay-3.03-8.el6.noarch 1/1 Verifying : cowsay-3.03-8.el6.noarch 1/1 Installed: cowsay.noarch 0:3.03-8.el6 Complete!
正常にインストールされたら、cowsay コマンドを実行してから、牛に言ってもらいたいテキストを実行できます。牛の外観を変更するために使用できるさまざまな牛モードがあります 😀 (出力はこの投稿の後半にあります)
<オール>さまざまな Cowsay コマンドの例
通常、カウセイワードラップ。派手なバナーが必要な場合は、 -n
を使用する必要があります カウセイがワードラップしないように切り替えると、見栄えの良いフォーマットの出力が得られます。
# figlet kerneltalks | cowsay -n __________________________________________________ / _ _ _ _ _ \ | | | _____ _ __ _ __ ___| | |_ __ _| | | _____ | | | |/ / _ \ '__| '_ \ / _ \ | __/ _` | | |/ / __| | | | < __/ | | | | | __/ | || (_| | | <\__ \ | | |_|\_\___|_| |_| |_|\___|_|\__\__,_|_|_|\_\___/ | \ / -------------------------------------------------- \ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
上記のように、さまざまなスイッチを使用した以下の牛の外観を確認してください。
# cowsay -b kerneltalks _____________ < kerneltalks > ------------- \ ^__^ \ (==)\_______ (__)\ )\/\ ||----w | || || # cowsay -d kerneltalks _____________ < kerneltalks > ------------- \ ^__^ \ (xx)\_______ (__)\ )\/\ U ||----w | || || # cowsay -g kerneltalks _____________ < kerneltalks > ------------- \ ^__^ \ ($)\_______ (__)\ )\/\ ||----w | || || # cowsay -s kerneltalks _____________ < kerneltalks > ------------- \ ^__^ \ (**)\_______ (__)\ )\/\ U ||----w | || || # cowsay -t kerneltalks _____________ < kerneltalks > ------------- \ ^__^ \ (--)\_______ (__)\ )\/\ ||----w | || || # cowsay -y kerneltalks _____________ < kerneltalks > ------------- \ ^__^ \ (..)\_______ (__)\ )\/\ ||----w | || ||
すべての異なるモードで観察すると、変化するエンティティは目と舌だけです。したがって、それらを手動で定義および変更することもできます! -e スイッチで目を、-T
で舌を定義できます。 切り替えます。
# cowsay -e 88 kerneltalks _____________ < kerneltalks > ------------- \ ^__^ \ (88)\_______ (__)\ )\/\ ||----w | || || # cowsay -T X kerneltalks _____________ < kerneltalks > ------------- \ ^__^ \ (oo)\_______ (__)\ )\/\ X ||----w | || ||
上記の例では、88 を目、X を舌と定義しました!
開発者がこのようなおかしなコマンドに対して非常に多くの汎用性をコーディングしたことは素晴らしいことです!スイッチのサポート、マニュアル ページ、その他すべてが多すぎます!