$( $)
Perform a database-map lookup/action RHS operators
The $(
and $)
operators perform a
wide range of actions. They can be used to look up
information in databases, files, or network
services, or to perform transformation (such as
dequoting), or to store values in macros. These
operators make many customizations possible. Their
simplest use might look like this:
R $- $: $( faxusers $1 $) ← look up in a database R $- $: $( dequote $1 $) ← perform a transformation
In the first line, the intention is for users listed
in the faxusers
database to have their mail delivered by fax instead
of by email. Any lone username in the workspace
(matched by the $-
) is looked up (the $1
inside the $(
and $)
operators) in the
faxusers
database. If that username is found it that
database, the workspace is replaced by the value for
that name (perhaps something such as
user@faxhost). If the user is
not found in the database, the workspace is
unchanged.
The second line looks for any lone username in the
workspace, and dequotes (removes quotation marks
from) that name using the built-in dequote
type (dequote on page 904).
Note that the $(
and $)
operators
can be used only on the RHS of rules. They are fully
explained in Use $( and $) in Rules
on page 892.
Get sendmail, 4th Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.