On Thu, 13 Nov 1997, Edward Glamkowski wrote: > > or write a perl script (or a sed script, but I'll leave > that as an exercise for the reader :) > #!/usr/local/bin/perl -i.bak > > while (<>) { > if /($^M)/ { s/$1//g; } > print; > } Are you using perl6, with the Telepathy module that somehow does what you mean, and not what you type? :) First of all, you must put the condition after if in parens, unless you are doing the "reverse" if (i.e. print "Hi!\n" if 1;). Then you use $\r - which doesn't make sense; $ is per definition end of the matchable string, so there is nothing that can come after it. Finally, you use a while (<>) { something.. print;} loop, which can be replaced with two letters: -p in the switches line. The working solution is a one-liner that should be easy to remember; I don't bother making a script for it: perl -pi~ -e 's/\r//g' *.[ch] (or whatever files you want to do this on). ============================================================================= Erwin Andreasen Herlev, Denmark <erwin@pip.dknet.dk> UNIX System Programmer <URL:http://pip.dknet.dk/~erwin/> <*> (not speaking for) DDE ============================================================================= +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/08/00 PST