примерно perl -lne \'BEGIN { $curr = 0; } if (m#(.+?)\\s+\\((\\d+)\\)$#) { print "
" if ($curr < $2); print "
" if ($curr > $2); $curr = $2; print "
$1"; } END { print "" x $curr }\', только надо подробнее разобраться с уровнем вложенности $curr при закрытии файла, мог напутать.