Bagaimana cara menampilkan lelucon acak dari www.icndb.com di terminal Anda?


Jawaban:


25

Anda dapat menggunakan icndb RESTful API: http://www.icndb.com/api/ .

  1. Instal cowsay, recodedan jshonpaket:

    sudo apt-get install cowsay recode jshon
  2. Kemudian tambahkan saja baris berikut ke .bashrc:

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

    Catatan : memeriksa jika $PS1diatur memastikan bahwa lelucon tidak akan ditampilkan pada sesi non-interaktif.

  3. Sekarang ketika saya membuka gnome-terminalsaya mendapatkan:

    masukkan deskripsi gambar di sini


3
Jika Anda menginstal cowsay, Anda mungkin juga menginstalnya jshon. Itu membuat parsing JSON jauh lebih ringkas (dan mungkin lebih cepat):wget "http://api.icndb.com/jokes/random" -qO- | jshon -e value -e joke -u
— Oli

1
Saya tidak yakin Anda akan membutuhkannya (recode) dengan JSON. Dan jshon- u harus mengembalikan string yang sudah diterjemahkan.
— Oli

1
Cukup adil. Itu kesalahan icndb.com lebih dari JSON.
— Oli

1
Saya cukup yakin default ~/.bashrcsudah memeriksa apakah itu shell interaktif ( [[ $- != *i* ]] && return).
— nyuszika7h

2
Tidak perlu garis miring terbalik untuk kelanjutan garis setelah pipa. Pipa menyebabkan saluran dilanjutkan dengan sendirinya.
— Dijeda sampai pemberitahuan lebih lanjut.
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.