Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
SCAN(1)			    General Commands Manual		       SCAN(1)

       scan - produce a	summary	listing	of nmh messages

       scan [-help] [-version] [+folder] [msgs]	[-clear	| -noclear] [-form
	    formatfile]	[-format string] [-header | -noheader] [-width col-
	    umns] [-reverse | -noreverse] [-file filename]

       scan produces a one-line-per-message listing of the specified folder or
       messages.  Each scan line contains the message number (name), the date,
       the  "From:"  field,  the "Subject" field, and, if room allows, some of
       the body	of the message.	 For example:

	    15+	 10/05 crocker	  nned	<<Last week I asked some of
	    16-	 10/05 crocker	  message id format  <<I recommend
	    18	 10/06 brien	  Re: Exit status from mkdir
	    19	 10/07*brien	  "scan" listing format	in nmh

       The `+' on message 15 indicates that it is the current message.

       The `-' on message 16 indicates that it has been	replied	to,  as	 indi-
       cated  by  a  "Replied:"	component (produced by the -annotate switch to
       the repl	command).

       The `*' on message 19 indicates that no	"Date:"	 header	 was  present.
       The time	of last	modification of	the message is given instead.

       If  there  is  sufficient room left on the scan line after the subject,
       the line	will be	filled with text from the body,	preceded by "<<",  and
       terminated  by  ">>"  if	the body is sufficiently short.	 scan actually
       reads each of the specified messages and	parses them to extract the de-
       sired  fields.  During parsing, appropriate error messages will be pro-
       duced if	there are format errors	in any of the messages.

       By default, scan	will decode RFC	2047 (MIME)  encoding  in  these  scan
       listings.   scan	will only decode these fields if your terminal can na-
       tively display the character set	used in	the encoding.  You should  set
       the  appropriate	locale(1) environment variables	to your	native charac-
       ter set,	if it is not US-ASCII.	See locale(1) for more details on  the
       appropriate environment variables.

       The switch -reverse, makes scan list the	messages in reverse order.

       The -file filename switch allows	the user to obtain a scan listing of a
       mail drop.  This	listing	includes every message in the mail  drop  (you
       can't  scan  individual messages).  The switch -reverse is ignored with
       this option.  If	filename is a file, it can be in mbox or MMDF  format,
       as  produced by packf.  If filename is a	directory, it is considered to
       be in Maildir format.

       The switch -width columns may be	used to	specify	the width of the  scan
       line.  The default is to	use the	width of the terminal.

       The  -header  switch  produces a	header line prior to the scan listing.
       Currently, the name of the folder and the current  date	and  time  are
       output (see the HISTORY section for more	information).

       If  the -clear switch is	used and scan's	output is directed to a	termi-
       nal, then scan will consult the environment variables $TERM and	$TERM-
       CAP  to	determine your terminal	type in	order to find out how to clear
       the screen prior	to exiting.  If	the -clear switch is used  and	scan's
       output  is  not	directed  to a terminal	(e.g., a pipe or a file), then
       scan will send a	formfeed prior to exiting.

       For example, the	command:

	    (scan -clear -header; show all -show pr -f)	| lpr

       produces	a scan listing of the current folder, followed by a  formfeed,
       followed	 by a formatted	listing	of all messages	in the folder, one per
       page.  Omitting "-show pr -f" will cause	the messages  to  be  concate-
       nated, separated	by a one-line header and two blank lines.

       To override the output format used by scan, the -format string or -form
       file switches are used.	This permits individual	 fields	 of  the  scan
       listing	to  be	extracted  with	 ease.	 The string is simply a	format
       string and the file is simply a format file.  See mh-format(5) for  the

       In  addition to the standard mh-format(5) escapes, scan also recognizes
       the following additional	component escapes:

	    Escape    Returns  Description
	    body      string   the (compressed)	first part of the body
	    dtimenow  date     the current date
	    folder    string   the name	of the current folder

       {body} returns a	string without MIME decoding, i.e. the	MIME  boundary
       seperator may be	the first text shown.

       If no date header is present in the message, the	function escapes which
       operate on {date} will return values for	the date of last  modification
       of the message file itself.  This feature is handy for scanning a draft
       folder, as message drafts usually aren't	allowed	to have	dates in them.

       The /usr/local/etc/nmh directory	contains several format	files as exam-
       ples of customized scan output.

       scan  will update the nmh context prior to starting the listing,	so in-
       terrupting a long scan listing preserves	the new	context.  nmh  purists
       hate this idea.

       $HOME/.mh_profile		    The	user profile

       Path:		    To determine the user's nmh	directory
       Alternate-Mailboxes: To determine the user's mailboxes
       Current-Folder:	    To find the	default	current	folder

       pick(1),	show(1), mh-format(5)

       `+folder' defaults to the current folder
       `msgs' defaults to all
       `-format' defaulted as described	above
       `-width'	defaulted to the width of the terminal

       If a folder is given, it	will become the	current	folder.

       Prior  to using the format string mechanism, -header used to generate a
       heading saying what each	column in the  listing	was.   Format  strings
       prevent this from happening.

       The  value  of  each component escape is	set by scan to the contents of
       the first message header	scan encounters	with the corresponding	compo-
       nent  name;  any	following headers with the same	component name are ig-

nmh-1.7+dev			  2020-02-17			       SCAN(1)


Want to link to this manual page? Use this URL:

home | help