my $max_width = ...; # longest possible progress message text my $percent_done = int(100*$handled_paths/@paths); my $progress = build_user_handhold_message(..., ..., $percent_done); printf "\r%-*s", $max_width, $progress;