That value is a text expression containing three
positions:
hours:minutes:seconds
If the interval is longer than a day, that number of days (and possibly weeks or months) is
expressed in hours in the hours position. If any of the three positions is zero, it is expressed
as 00. If any of the three positions has a value less than 10, it is zero-padded on the left. For
example, a -q0h9m12s would yield this value in the ${queue_interval} macro:
00:09:12
One possible use for this macro might be to cause rules to function differently depending
on whether the -q command-line switchcontains an interval. Consider, for example, the
following mc configuration file lines:
LOCAL_RULESETS
Squeuegroup
R $* $: $&{queue_interval} $| $1
R $+ : $+ : $+ $| $* $@
... select queue groups here
Here, under LOCAL_RULESETS, we declare the queuegroup rule set (?§11.4.5 on page 417),
which is used to select queue groups for particular addresses. The first rule prefixes the
workspace with the value of the ${queue_interval} macro, and a $| operator. The second
This is the Title of the Book, eMatter Edition
Copyright ?© 2007 O??™Reilly & Associates, Inc. All rights reserved.
842 | Chapter 21: The D (Define a Macro) Configuration Command
rule checks the workspace to the left of the $| to see if it looks like a time expression. If it
does (if sendmail was run with a -q interval), we skip (the RHS $@) queue group selection.
Pages:
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485