view bin/roll @ 11113:aa8e4791536e

<oerjan> learn print_args_or_input Is a utility command that makes it easy to create a shell script that can be used either as a pipe or directly as a HackEgo command. Use as print_args_or_input "$@" | yourShellCode . See also shebang_args_or_input.
author HackBot
date Sat, 22 Jul 2017 00:45:19 +0000
parents e037173e0012
children
line wrap: on
line source

#!/bin/bash
rolls="$*"
if [ "$rolls" = "" ] ; then rolls="1d6" ; fi

for i in $rolls
do
    if expr "$i" : ".*[dD].*" >& /dev/null
    then
        rollc=`echo "$i" | sed 's/[dD].*//'`
        diesz=`echo "$i" | sed 's/.*[dD]//'`
    else
        rollc=1
        diesz="$i"
    fi

    roll=0
    for (( j = 0; $j < $rollc; j++ ))
    do
        roll=$(( roll + (RANDOM % diesz) + 1 ))
    done

    echo -n $roll' '
done
echo