This commit is contained in:
Anmol Sethi 2022-12-01 17:29:40 -08:00
parent f040d58cf6
commit 729b12685a
No known key found for this signature in database
GPG key ID: 25BC68888A99A8BA
2 changed files with 20 additions and 32 deletions

View file

@ -18,25 +18,19 @@ if [ "${LIB_RAND-}" ]; then
fi
LIB_RAND=1
rand() {
seed="$1"
range="$2"
seed_file="$(mktemp)"
_echo "$seed" | md5sum > "$seed_file"
shuf -i "$range" -n 1 --random-source="$seed_file"
}
pick() {
if ! command -v shuf >/dev/null || ! command -v md5sum >/dev/null; then
eval "_echo \"\$3\""
return
fi
seed="$1"
shift
i="$(rand "$seed" "1-$#")"
eval "_echo \"\$$i\""
seed_file="$(mktemp)"
echo "$seed" > "$seed_file"
while [ $# -gt 0 ]; do
echo "$1"
shift
done \
| sort --sort=random --random-source="$seed_file" \
| head -n1
}
#!/bin/sh
if [ "${LIB_LOG-}" ]; then

View file

@ -23,25 +23,19 @@ if [ "${LIB_RAND-}" ]; then
fi
LIB_RAND=1
rand() {
seed="$1"
range="$2"
seed_file="$(mktemp)"
_echo "$seed" | md5sum > "$seed_file"
shuf -i "$range" -n 1 --random-source="$seed_file"
}
pick() {
if ! command -v shuf >/dev/null || ! command -v md5sum >/dev/null; then
eval "_echo \"\$3\""
return
fi
seed="$1"
shift
i="$(rand "$seed" "1-$#")"
eval "_echo \"\$$i\""
seed_file="$(mktemp)"
echo "$seed" > "$seed_file"
while [ $# -gt 0 ]; do
echo "$1"
shift
done \
| sort --sort=random --random-source="$seed_file" \
| head -n1
}
#!/bin/sh
if [ "${LIB_LOG-}" ]; then