Function: longest

Find the longest element (most characters)

USAGE: longest arrayname var:longest

longest()
{        
  local arrayname=${1:?Array name required} varname=${2:-longest}
  local IFS= string longest e
  

Copy the array, $arrayname, to local array

  eval "array=( \"\${$arrayname[@]}\" )"
  longest=${array[0]}
  for e in "${array[@]}"
  do
    [ ${#e} -gt ${#longest} ] && longest=$e
  done
  [ "$varname" != longest ] && eval "$varname=\$longest}"
}