dotfiles/dot_local/bin/executable_joke
2023-08-02 08:23:25 +02:00

52 lines
No EOL
1.9 KiB
Bash

#!/usr/bin/env bash
case "$1" in
"dad")
joke=$(curl -sH "Accept: text/plain" 'https://icanhazdadjoke.com/')
echo "Daily Dad Joke: $joke"
;;
"bofh")
excuses_file="$HOME/.local/share/bofh"
num_lines=$(nl "$excuses_file" | tail -n 1 | awk '{print $1}')
echo -n "Daily BOFH Excuse: "
awk 'NR=='$((1 + RANDOM % num_lines ))'{print;exit}' "$excuses_file"
;;
"hq")
case "$2" in
"dijkstra")
dijkstra="$HOME/.local/share/hackerquotes/dijkstra"
dijkstra_lines=$(nl "$dijkstra" | tail -n 1 | awk '{print $1}')
echo -n "Daily Hackerquote: "
awk 'NR=='$((1 + RANDOM % dijkstra_lines ))'{print;exit}' "$dijkstra"
echo " - Edsger W. Dijkstra"
;;
"knuth")
knuth="$HOME/.local/share/hackerquotes/knuth"
knuth_lines=$(nl "$knuth" | tail -n 1 | awk '{print $1}')
echo -n "Daily Hackerquote: "
awk 'NR=='$((1 + RANDOM % knuth_lines ))'{print;exit}' "$knuth"
echo " - Donald E. Knuth"
;;
"perlis")
perlis="$HOME/.local/share/hackerquotes/perlis"
perlis_lines=$(nl "$perlis" | tail -n 1 | awk '{print $1}')
echo -n "Daily Hackerquote: "
awk 'NR=='$((1 + RANDOM % perlis_lines ))'{print;exit}' "$perlis"
echo " - Alan J. Perlis"
;;
"torvalds")
torvalds="$HOME/.local/share/hackerquotes/torvalds"
torvalds_lines=$(nl "$torvalds" | tail -n 1 | awk '{print $1}')
echo -n "Daily Hackerquote: "
awk 'NR=='$((1 + RANDOM % torvalds_lines ))'{print;exit}' "$torvalds"
echo " - Linus Torvalds"
;;
"misc")
misc="$HOME/.local/share/hackerquotes/misc"
misc_lines=$(nl "$misc" | tail -n 1 | awk '{print $1}')
echo -n "Daily Hackerquote: "
awk 'NR=='$((1 + RANDOM % misc_lines ))'{print;exit}' "$misc"
;;
esac
;;
esac