bionic (1) mhpath.1mh.gz

Provided by: mmh_0.3-3_amd64 bug

NAME

       mhpath - print full pathnames of mh 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 mail storage location (`Path') is output;
       this can be useful in shell scripts.

       Contrasted with other mmh commands, a message argument to mhpath  may  often  be  intended  for  writing.
       Because of this:

       1)  the name `b' has been added to mhpath's list of reserved message names (the others are `f', `l', `p',
           `n', `c', and `a').  The `b' (beyond) message is equivalent to the message after the last message  in
           a folder (and equivalent to 1 in a folder without messages).  The `b' 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 `c', and (obviously) the single message name `b'.  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.

       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 a
            /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 b
            /r/phyl/Mail/foo/7

            % mhpath l b
            /r/phyl/Mail/foo/6
            /r/phyl/Mail/foo/7

            % mhpath l-b
            bad message list `l-b'.

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

            % mhpath 1-2
            no messages in range `1-2'.

            % mhpath f: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/.mmh/profile         The user profile

PROFILE COMPONENTS

       Path:                To determine the user's mail storage
       Current-Folder:      To find the default current folder

SEE ALSO

       folder(1)

DEFAULTS

       `+folder' defaults to the current folder
       `msgs' defaults to none

CONTEXT

       None

BUGS

       Like all mmh 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.