如何在您的终端上显示来自www.icndb.com的随机笑话?


Answers:


25

您可以使用icndb RESTful API:http : //www.icndb.com/api/

  1. 安装cowsayrecodejshon包:

    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
Oli

1
我不确定您是否需要使用JSON(重新编码)。而且jshon,-s仍应返回解码后的字符串。
奥利(Oli)

1
很公平。那是icndb.com的错,而不是JSON。
奥利(Oli)

1
我敢肯定,默认值~/.bashrc已经检查了它是否是交互式外壳程序([[ $- != *i* ]] && return)。
nyuszika7h 2014年

2
管道后无需反斜线继续行。管道使管线自行延伸。
暂停,直到另行通知。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.