procmail
[Top] [All Lists]

Re: what does 1^0 mean ?

2001-12-20 21:16:48
On Thu, Dec 20, 2001 at 10:00:28PM -0600, David W. Tamkin wrote:
When Don wrote code that included the "$" modifier and noted,

| > Just don't forget the '$' at the beginning of each condition to get the
| > variable expanded.

cat(_at_)zip(_dot_)com(_dot_)au asked,

| Doesn't this mean that a shell process will be spawned for each entry in
| the rule to do the expansion?

I'm very sure that in expanding conditions that have the "$" modifier,

1. procmail does the variable substitution on its own;

Hmmm. This is the part of the manpage that worries me:

       $    Evaluate the remainder of this condition according to               
            sh(1) substitution rules inside double  quotes,  skip               
            leading whitespace, then reparse it.                                

2. procmail does any backticked command substitution where the command
   string has no characters from $SHELLMETAS; and

This seems to be for pipes:

       |      Starts the specified program, possibly in $SHELL if               
              any of the characters $SHELLMETAS are spotted.  You               
              ...

       SHELLMETAS  If any of the characters in SHELLMETAS appears               
                   in  the  line  specifying a filter or program,               
                   the line will be  fed  to  $SHELL  instead  of               
                   being executed directly.                                     

3. procmail spawns a shell only for command substitution where the command
   includes characters from $SHELLMETAS.

Yeah. This seems to be what I see above.

So if my beliefs about it are right, the answer is no, it doesn't.

Still pondering. :)

-- 
CaT        - A high level of technology does not a civilisation make.
_______________________________________________
procmail mailing list
procmail(_at_)lists(_dot_)RWTH-Aachen(_dot_)DE
http://MailMan.RWTH-Aachen.DE/mailman/listinfo/procmail

<Prev in Thread] Current Thread [Next in Thread>