08/01/26 00:32:05 0LMYrtfF
個人的には NUM= 以降を配列でやらせることが多いので、わりと bash を使う。
#!/bin/bash
DIR=$1
IFS='
'
TARGET=(`find "${DIR:=.}" -maxdepth 1 \( -name '*.[Jj][Pp][Ee][Gg]' -o -name '*.[Jj][Pp][Gg]' -o -name '*.[Pp][Nn][Gg]' \)`)
if [ ${#TARGET[@]} -eq 0 ]; then
echo "No files found in ${DIR:=.}"
exit -1
fi
#echo ${TARGET[`expr ${RANDOM} % ${#TARGET[@]}`]}
bsetbg ${TARGET[`expr ${RANDOM} % ${#TARGET[@]}`]}
とか。