ターミナルでwww.icndb.comからのランダムなジョークを表示する方法は?


回答:


25

icndb RESTful API:http ://www.icndb.com/api/を使用できます

  1. cowsayrecodeおよびjshonパッケージをインストールします。

    sudo apt-get install cowsay recode jshon
  2. 次に、次の行をに追加します.bashrc

    if [ "$PS1" ]; then
        wget "http://api.icndb.com/jokes/random" -qO- | jshon -e value -e joke -u |
        recode html | cowsay -f tux
    fi

    $PS1が設定されているかどうかを確認すると、非対話型セッションでジョークが表示されなくなります。

  3. 今、私が開くとき、gnome-terminal私は得る:

    ここに画像の説明を入力してください


3
Cowsayをインストールする場合は、インストールすることjshonもできます。これは、(おそらく、より速く、)多くの簡潔なJSONを解析します:wget "http://api.icndb.com/jokes/random" -qO- | jshon -e value -e joke -u
オリ

1
JSONでそれを(再コーディング)する必要があるかどうかはわかりません。そして、jshon「-uとにかくデコードされた文字列を返す必要がありますね。
オリ

1
けっこうだ。それはJSONよりもicndb.comの欠点です。
オリ

1
デフォルトでは~/.bashrc、インタラクティブシェル([[ $- != *i* ]] && return)であるかどうかが既にチェックされていると確信しています。
nyuszika7h 14

2
パイプの後の行継続にバックスラッシュは必要ありません。パイプにより、ラインはそれ自体で継続されます。
追って通知があるまで一時停止します。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.