Analisar bash em oneliners é uma tarefa difícil ...
De qualquer forma, como ponto de partida, aqui vai uma sugestão para cobrir situações muito específicas como a apresentada
perl -p0e '
s/#.*//;
s/;?\s+(do|done|then|else|fi)\s+/ ; $1 /g '