วิธีการแสดงตลกแบบสุ่มจาก www.icndb.com ใน terminal ของคุณ?


17

ฉันรู้แล้วว่าคุณจะได้รับการพูด / เรื่องตลกที่ดีโดยใช้โปรแกรมฟอร์จูน

แต่ฉันได้พบในสคริปต์ urwirdแหล่งใหม่ของความสนุกที่ฉันต้องการเมื่อฉันเปิดเทอร์มินัลใหม่

คราวนี้เรื่องตลกมาจากhttp://www.icndb.com

คำตอบ:


25

คุณสามารถใช้ API สงบ icndb: http://www.icndb.com/api/

  1. ติดตั้งcowsay, recodeและ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
Oli

1
ฉันไม่แน่ใจว่าคุณจะต้อง (recode) กับ JSON และjshon's - คุณควรกลับสตริงถอดรหัสอยู่แล้ว
Oli

1
ยุติธรรมพอสมควร นั่นเป็นความผิดของ icndb.com มากกว่า JSON
Oli

1
ฉันค่อนข้างมั่นใจว่าค่าเริ่มต้น~/.bashrcจะตรวจสอบว่าเป็นเชลล์แบบโต้ตอบ ( [[ $- != *i* ]] && return) หรือไม่
nyuszika7h

2
ไม่จำเป็นต้องใช้แบ็กสแลชสำหรับการต่อเนื่องของเส้นหลังไพพ์ ไปป์ทำให้สายจะต่อเนื่องด้วยตัวเอง
หยุดชั่วคราวจนกว่าจะมีการแจ้งให้ทราบต่อไป
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.