Ok, I think I did not understand the original problem. I thought you were trying to 'align' all the comments from a text like this:
perl -E"say '.' x rand(80) . '# test comment' for 1..3"
......................# test comment
.................................# test comment
......................................................................
+....# test comment
So eventually I came up with this which I think is too complex.
perl -E"say '.' x rand(80) . '# test comment' for 1..10" |perl -lpe "
+/\s*#(.*)$|$/ && ( substr( $_, $-[0], length($_) ) = qq{ }x(68 - $-[
+0] + 2) . qq{ #$1} )
...............................................
+ # test comment
..........................................................
+ # test comment
.......................................
+ # test comment
............................................................
+ # test comment
......................................................................
+.... # test comment
......
+ # test comment
........................................
+ # test comment
...............................
+ # test comment
...................................................
+ # test comment
...................................
+ # test comment
Maybe it can be rewritten with a printf but I will leave it with this.