Moin moin!
cat prog.pl | sed -e 's/#[^!]*$//g' > prog.pl~ && mv prog.pl~ prog.pl && rm prog.pl~
Würde ich zumindest machen.
Aber ich weiß, kann natürlich auch, insbesondere bei Perl, arg in's Auge gehen ;-)
*Ganz* arg ins Auge. ;-) Abgesehen davon ist das rm-Kommando sinnlos.
Ich verwende in Perl:
1 while ($files{'xren'} =~ s/$newline[\t\x20]*(?:#.*?)?$newline/$newline/g);
nachdem ich $newline mit dem physischen Zeilenumbruchzeichen bestueckt habe (see http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/xren/xren/package.pl?rev=1.4&content-type=text/vnd.viewcvs-markup for full script). Entfernt natuerlich keine Kommentare auf der Restzeile, also mit Programmcode davor, aber das geht in Perl imho nicht zuverlaessig, wenn man nicht nen gleich den Perl-Interpreter selbst darauf loslaesst.
So long
--
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
-- Rich Cook