![]() |
|
|
|
#1 |
|
How can I use perl to remove garbage in my mailbox
caused by my procmail filter. This is a known problem but it occurs too frequently and I certainly don't want to give up procmail. What I get is a false message like this: From foo@bar Tue Nov 14 21:26:34 2006 so I need a one-line perl script to remove the line(s) from my inbox before I read mail as in: cat $inbox |perl -pi -e 's/^From foo@bar//g' However, that will not work since sometimes the "^From " line could be followed by a "Status:" or other lines. Thus, the removal must do a range as in awk ala: cat $inbox |awk '/^From foo@bar/,/^$/' {next} 1 This however does not work for me either and I'm not sure why other than my awk being from Solaris 7. Thanks for your help. surfergirl@thebeach.com |
|
|
|
|
#2 |
|
Posts: n/a
|
In article <WAz6h.1016$>, <>
wrote: > How can I use perl to remove garbage in my mailbox > caused by my procmail filter. This is a known problem > but it occurs too frequently and I certainly don't want > to give up procmail. What I get is a false message > like this: > > From foo@bar Tue Nov 14 21:26:34 2006 > > > so I need a one-line perl script to remove the line(s) > from my inbox before I read mail as in: > > cat $inbox |perl -pi -e 's/^From foo@bar//g' > > However, that will not work since sometimes the > "^From " line could be followed by a "Status:" or other lines. > Thus, the removal must do a range as in awk ala: > > cat $inbox |awk '/^From foo@bar/,/^$/' {next} 1 > > This however does not work for me either and I'm not sure why > other than my awk being from Solaris 7. I am not familiar with awk operations, so cannot be sure, but you might be able to use the Perl 'flip-flop' operator (e.g., /^From/ .. /^$/). See 'perldoc perlop' and search for 'Range Operators'. FYI: this newsgroup is defunct. Try comp.lang.perl.misc in the future. |
|