Aliasing allows you to send mail to a person or group of persons without typing their complete mail address. Both your MH personal alias file and the system alias file for mail delivery, /usr/lib/mh/MailAliases, process aliases in the same way. You can specify the name of your personal alias file in your .mh_profile.
A line of the alias file can have the following formats: alias : address-group alias ; address-group < alias-file
The first line of the example is the standard format. The alias appears at the start of the line, followed by a colon, followed by the address or addresses that it represents.
If the alias is terminated with a semicolon (;) instead of a colon (:), the mail system outputs both the alias and the address-list in the correct format.
If the line starts with a <, the file named after the < is read for more alias definitions. The reading is done recursively, so a < can occur in the beginning of an alias file with the expected results.
Addresses can be expressed in the following formats: alias: address1, address2, address3, ... alias: <file alias: =group alias: +group alias: *
Addresses are normally given in a list, separated by a comma and one or more spaces. If the list goes over one line, you can create a continuation line by placing a back-slash (\) immediately before the new-line character.
If the address-group begins with a <, the file named after the < is read and its contents added to the address list for the alias.
If the address-group starts with an =, then the file /etc/group is consulted for the group named after the =. Each login name occurring as a member of the group is added to the address list for the alias.
If the address-group starts with a +, then the file /etc/group is consulted to determine the group-id of the group named after the +. Each login name occurring in the /etc/passwd file whose group-id is indicated by this group is added to the address list for the alias.
If the address-group is simply *, then the file /etc/passwd is consulted and all login names with a user-id greater than a given number (usually 200) are added to the address list for the alias.
Aliases are resolved at posting time in the following way. A list of all the addresses from the message is built and duplicate addresses are eliminated. If the message originated on the local host, then alias resolution is performed for those addresses in the message that have no host specified. For each line in the alias file, aliases are compared against all of the existing addresses. If there is a match, the matched alias is removed from the address list, and each new address in the address-group is added to the address list, if it is not already on the list.
The alias itself is not usually output; the address-group that the alias maps to is output instead. However, if the alias is terminated with a semicolon (;) instead of a colon (:), both the alias and the address are output in the correct format. This makes replies possible, because in MH aliases and personal aliases are unknown to the mail transport system.
MH alias files are expanded into the headers of messages posted. This aliasing occurs first, at posting time, without the knowledge of the message transport system. In contrast, once the message transport system is given a message to deliver to a list of addresses, for each address that appears to be local, a system-wide alias file is consulted. These aliases are not expanded into the headers of messages delivered.
An alias file must not reference itself directly, or indirectly through another alias file, using the <file construct.
First, add the following line to your .mh_profile: Aliasfile: aliases If you have chosen a different name for your file, you should use this instead of aliases. If your file is in a directory other than your Mail directory, you must supply the full pathname.
Next, create the file aliases in your Mail directory.
You can now start to add aliases to your aliases file.
This section gives an example of an alias file, followed by an explanation of the entries: sgroup: fred, fear, freida fred: frated@UCI work-committee: <work.aliases staff: =staff wheels: +wheel everyone: *
On the first line of the example, sgroup is defined as an alias for the three names frated@UCI, fear, and freida. On the second line of the example, fred is defined as an alias for frated@UCI. Next, the definition of work-committee is given by reading the file work.aliases in your Mail directory. The alias staff is defined as all users who are listed as members of the group staff in the /etc/group file. The alias wheels is defined as all users whose group-id in /etc/passwd is equal to the group wheel. Finally, the alias everyone is defined as all users with a user-id in /etc/passwd greater than 200.
ali(1), send(1), whom(1), group(4), passwd(4), mh_profile(4), mtstailor(4), conflict(8), post(8) delim off