Você pode fazer com que date faça o trabalho para você: a opção -d permite que você especifique a data em uma "string de data legível para humanos na maior parte livre" (de man date ).
Infelizmente, o formato não é livre o suficiente para aceitar a saída hwclock , mas funciona bem se você remover o campo final especificando frações de segundo:
date -d "$(hwclock|sed 's/ \..*$//g')"
Eu testei, mas não consegui encontrar o formato quando há zero frações de segundo, então não sei se ele mostraria o mesmo formato, por exemplo, Sat 28 Jul 2018 08:47:47 PM BST .000000 seconds . Se não houver ponto decimal, será necessária outra substituição sed .
Desde que ainda haja um espaço duplo após o fuso horário, o seguinte funcionará:
date -d "$(hwclock|sed 's/ .*$//g')"
Você pode fazer disso um script de shell ou uma função definida em ~/.bashrc chamada algo como hwclockdf (ou seja, em date format).