MHPATH(1)
NAME
mhpath - print full pathnames of nmh messages and folders
SYNOPSIS
mhpath [+folder] [msgs] [-version] [-help]
DESCRIPTION
Mhpath expands and sorts the message list `msgs' and writes the full
pathnames of the messages to the standard output separated by newlines.
If no `msgs' are specified, mhpath outputs the folder pathname instead.
If the only argument is `+', your nmh "Path" is output; this can be
useful is shell scripts.
Contrasted with other nmh commands, a message argument to mhpath may
often be intended for writing. Because of this:
- 1) the name "new" has been added to mhpath's list of reserved message
- names (the others are "first", "last", "prev", "next", "cur", and "all"). The new message is equivalent to the message after the last message in a folder (and equivalent to 1 in a folder without messages). The "new" message may not be used as part of a message range.
- 2) Within a message list, the following designations may refer to mes
- sages that do not exist: a single numeric message name, the single message name "cur", and (obviously) the single message name "new". All other message designations must refer to at least one existing message.
- 3) An empty folder is not in itself an error.
- Message numbers greater than the highest existing message in a folder as part of a range designation are replaced with the next free message number.
- Examples: The current folder foo contains messages 3 5 6. Cur is 4.
% mhpath
/r/phyl/Mail/foo- % mhpath all
/r/phyl/Mail/foo/3
/r/phyl/Mail/foo/5
/r/phyl/Mail/foo/6 - % mhpath 2001
/r/phyl/Mail/foo/7 - % mhpath 1-2001
/r/phyl/Mail/foo/3
/r/phyl/Mail/foo/5
/r/phyl/Mail/foo/6 - % mhpath new
/r/phyl/Mail/foo/7 - % mhpath last new
/r/phyl/Mail/foo/6
/r/phyl/Mail/foo/7 - % mhpath last-new
bad message list "last-new". - % mhpath cur
/r/phyl/Mail/foo/4 - % mhpath 1-2
no messages in range "1-2". - % mhpath first:2
/r/phyl/Mail/foo/3
/r/phyl/Mail/foo/5 - % mhpath 1 2
/r/phyl/Mail/foo/1
/r/phyl/Mail/foo/2 - mhpath is also useful in back-quoted operations:
% cd `mhpath +inbox`- % echo `mhpath +`
/r/phyl/Mail
FILES
$HOME/.mh_profile The user profile
PROFILE COMPONENTS
Path: To determine the user's nmh directory
Current-Folder: To find the default current folder
SEE ALSO
DEFAULTS
`+folder' defaults to the current folder
`msgs' defaults to none
CONTEXT
None
BUGS
- Like all nmh commands, mhpath expands and sorts [msgs]. So don't
expect
- mv `mhpath 501 500`
- to move 501 to 500. Quite the reverse. But
mv `mhpath 501` `mhpath 500`- will do the trick.
- Out of range message 0 is treated far more severely than large out of range message numbers.