A abordagem é específica para a versão do grub, note que para o grub 2+ então kernel
foi substituído por linux
, então essa abordagem leva isso em conta
awk '/\/vmlinuz{kernel[$2]}
END{
asorti(kernel);
latest=kernel[length(kernel)];
print "Latest kernel : ",gensub(/\/vmlinuz-([[:digit:].-]*[[:digit:]]).*$/,"\1","1",latest)}
' /boot/grub/grub.cfg
Saída de amostra
Latest kernel : 3.13.0-86
Nota: Requer [gnu-awk]