bash gera um erro porque não é um código de shell válido. (Também não é válido awk code.)
Tente isso
rhel_major=$(grep -Eoh '[0-9]+\.[0-9]+' /etc/{issue,*release} | awk -F'.' '{ print $1; exit }')
rhel_minor=$(grep -Eoh '[0-9]+\.[0-9]+' /etc/{issue,*release} | awk -F'.' '{ print $2; exit }')
rhel_release_code=$((rhel_major << 8 | rhel_minor))
Se você não deseja realmente os valores de $rhel_major e $rhel_minor , é possível calcular $rhel_release diretamente em uma etapa usando awk .