dotfiles/hm/scripts/lip

32 lines
560 B
Plaintext
Raw Permalink Normal View History

#!/usr/bin/env nix-shell
#! nix-shell -i bash --pure
2024-02-01 16:24:19 +01:00
#! nix-shell -p bash jq curl cacert findutils coreutils
2023-07-23 13:28:39 +02:00
2024-02-01 16:24:19 +01:00
set -euxo pipefail
2023-07-23 13:28:39 +02:00
url="https://ip.frogeye.fr/json"
cachedir="$HOME/.cache/lip"
ip="${1:-}"
2023-07-25 13:33:22 +02:00
jq_sel="del(.user_agent)"
if [ $# -gt 1 ]
2023-07-23 13:28:39 +02:00
then
shift
jq_sel="$@"
fi
if [ -n "$ip" ]
then
cachefile="$cachedir/$ip"
if ! find "$cachefile" -mtime -7 &> /dev/null
then
mkdir -p "$cachedir"
2023-07-25 13:23:56 +02:00
curl --silent "$url?ip=$ip" > "$cachefile"
2023-07-23 13:28:39 +02:00
fi
cat "$cachefile" | jq $jq_sel
else
curl --silent "$url" | jq $jq_sel
fi