mhpathmh - Online in the Cloud

This is the command mhpathmh that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

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 current mail folder's pathname instead. If the only argument is `+', your nmh
“Path” is output; this can be useful in 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 messages 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, if the folder contains messages.

3) An empty folder is not in itself an error.

A message number less than that of the smallest existing message in a folder is treated as
if the message already exists. A message number greater than that of the highest existing
message in a folder causes an “out of range” error message to be displayed.

As part of a range designation that contains messages that do exist, message numbers less
than the smallest, or greater than the highest, existing message in a folder are ignored.

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
mhpath: message 2001 out of range 1-6

% 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
mhpath: bad message list last-new

% mhpath cur
/r/phyl/Mail/foo/4

% mhpath 1-2
mhpath: 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 backquoted operations:

% cd `mhpath +inbox`

% echo `mhpath +`
/r/phyl/Mail

Because mhpath expands and sorts [msgs]. the command

mv `mhpath 501 500`

to will not move 501 to 500. Quite the reverse. But

mv `mhpath 501` `mhpath 500`

will do the trick.

Out-of-range message 0 produces a different error message than large out-of-range message
numbers. But both cause mhpath to exit with non-zero status.

Use mhpathmh online using onworks.net services



Latest Linux & Windows online programs