LISTSERV® User Commands Reference Card

The following commands can be executed by sending Email to:

with no subject, and the command in the body of the message.

This document is available separately. It can be retrieved in plain text by the command INFO REFCARD.

Commands are listed in alphabetical order, with the minimum acceptable abbreviation in capital letters. Angle brackets are used to indicate optional parameters. All commands which return a file accept an optional 'F=fformat' keyword (without the quotes) that lets you select the format in which you want the file sent; the default format is normally appropriate in all cases. Some esoteric, historical or seldom-used commands and options have been omitted.

List subscription commands (from most to least important)

SUBscribe    listname <full_name>              Subscribe to a list, or change
                                               your name if already subscribed
                      ANONYMOUS                -> Subscribe anonymously
             Following either <full_name> or ANONYMOUS you may specify 
             individual user options:
                      <WITH opt1 opt2...>      -> with specified user options
SIGNOFF                                        Remove yourself:
             listname                          - From the specified list
             *                                 - From all lists on that server
             * (NETWIDE                        - From all lists in the network
CHANGE                                         Change your subscribed address
                                               to "newaddr":
             listname newaddr                  -> on the specified list
             * newaddr                         -> on all lists on the server
SET          listname options                  Alter your subscription options:
             ACK/NOACK/MSGack                  -> Acknowledgements for postings
             CONCEAL/NOCONCEAL                 -> Hide yourself from REVIEW
             HTML/NOHTML                       -> Prefer/avoid HTML format
                                                  (especially HTML digests)
             Mail/NOMail                       -> Toggle receipt of mail
             MIME/NOMIME                       -> Prefer/avoid MIME format
                                                  (especially MIME digests)
             DIGests/INDex/NODIGests/NOINDex   -> Ask for digests or message
                                                  indexes rather than getting
                                                  messages as they are posted
             REPro/NOREPro                     -> Copy of your own postings?
             TOPICS: ALL                       -> Select topics you are
                     <+/->topicname               subscribed to (add/remove
                                                  one or replace entire list)
Options for mail headers of incoming postings (choose one):
             FULLhdr or FULL822                -> "Full" (normal) mail headers
             IETFhdr                           -> Internet-style headers
             SHORThdr or SHORT822              -> Short headers
             DUALhdr                           -> Dual headers, useful with PC
                                                  or Mac mail programs
             SUBJecthdr                        -> Normal header with list name
                                                  in subject line
CONFIRM      listname1 <listname2 <...>>       Confirm your subscription
                                               (when LISTSERV requests it)

Other list-related commands

GETPOST      listname ref1 <ref2 <...>>        Order individual messages from
                                               list archives
INDex        listname                          Sends a directory of available
                                               archive files for the list, if
                                               postings are archived
Lists        <option>                          Send a list of lists as follow:
             (no option)                       -> Local lists only, one line
                                                  per list
             Detailed                          -> Local lists, full information
                                                  returned in a file
             Global /xyz                       -> All known lists whose name or
                                                  title contains 'xyz'
             SUMmary <host>                    -> Membership summary for all
                                                  lists on specified host
             SUMmary ALL                       -> For all hosts (long output,
                                                  send request via mail!)
             SUMmary TOTAL                     -> Just the total for all hosts
Query        listname                          Query your subscription options
                                               for a particular list (use the
                                               SET command to change them)
             *                                 -> Query all lists you are
                                                  subscribed to on that server
REGister     full_name                         Tell your name to LISTSERV, so
                                               that you don't have to specify
                                               it on subsequent SUBSCRIBE's
             OFF                               Make LISTSERV forget your name
REView       listname <(options>               Get information about a list
             BY sort_field                     -> Sort list in a certain order:
                Country                           by country of origin
                Date                              by subscription date
                Name                              by name (last, then first)
                NODEid                            by hostname/nodeid
                Userid                            by userid
             BY (field1 field2)                -> You can specify more than one
                                                  sort field if enclosed in
                                                  parentheses: BY (NODE NAME)
             Countries                         -> Synonym of BY COUNTRY
             Topics                            -> Include breakdown of 
                                                  subscribers per topic
             LOCal                             -> Don't forward request to
             Msg                               -> Send reply via interactive
                                                  messages (BITNET users only)
             NOHeader                          -> Don't send list header
             Short                             -> Don't list subscribers
SCAN         listname text                     Scan a list's membership for a
                                               name or address
SEArch       listname word1 <word2 <...>>      Search list archives
        or:  word1 <word2 <...>> IN listname
             FROM date1                        -> From this date
                  TODAY                        -> From today
                  TODAY-7                      -> In the last 7 days
             TO   date2                        -> To this date
               SUBJECT CONTAINS xxxx           -> Only this subject
               SENDER  CONTAINS xxxx           -> Only this author
                                               Complex boolean operations are
                                               supported, see database guide
STats        listname <(options>               Get statistics about a list (VM)
             LOCal                             -> Don't forward to peers

Informational commands

Help                                           Obtain a list of commands
INFO         <topic>                           Order a LISTSERV manual, or get
             <listname>                        a list of available ones (if no
                                               topic was specified); or get
                                               information about a list
Query        File fn ft <filelist> <(options>  Get date/time of last update of
                                               a file, and GET/PUT file access
             FLags                             -> Get additional technical
                                                  data (useful when reporting
                                                  problems to experts)
RELEASE                                        Find out who maintains the
                                               server and the version of the
                                               software and network data files
SHOW         <function>                        Display information as follows:
             ALIAS node1 <node2 <...>>         -> BITNET nodeid to Internet
                                                  hostname mapping
             BITEARN (VM only)                 -> Statistics about the BITEARN
                                                  NODES file
             DISTribute                        -> Statistics about DISTRIBUTE
             DPATHs host1 <host2 <...>>        -> DISTRIBUTE path from that
                                                  server to specified host(s)
             DPATHs *                          -> Full DISTRIBUTE path tree
             FIXes (VM only)                   -> List of fixes installed on the
                                                  server (non-VM see LICENSE)
             HARDWare or HW                    -> Hardware information
             LICense                           -> License/capacity information
                                                  and software build date
             LINKs node1 <node2 <...>>         -> Network links at the BITNET
                                                  node(s) in question
             NADs node1 <node2 <...>>          -> Addresses LISTSERV recognizes
                                                  as node administrators
             NETwork (VM only)                 -> Statistics about the NJE
             NODEntry node1 <node2 <...>>      -> BITEARN NODES entry for the
                                                  specified node(s)
             NODEntry node1 /abc*/xyz          -> Just the ':xyz.' tag and all
                                                  tags whose name starts with
             PATHs snode node1 <node2 <...>>   -> BITNET path between 'snode'
                                                  and the specified node(s)
             POINTs <ALL | list1 list2...>     -> Graduated license point
                                                  information for planning
             STATs                             -> Usage statistics
                                                  (default option)
             VERSion                           -> Same as RELEASE command
             (no function)                     -> Same as SHOW STATS

Commands related to file server functions

AFD                                            Automatic File Distribution
             ADD    fn ft <filelist <prolog>>  Add file or generic entry to
                                               your AFD list
             DELete fn ft <filelist>           Delete file(s) from your AFD
                                               list (wildcards are supported)
             List                              Displays your AFD list
             For node administrators:
             FOR user ADD/DEL/LIST etc         Perform requested function on
                                               behalf of a user you have
                                               control over (wildcards are
                                               supported for DEL and LIST)
FUI                                            File Update Information: same
                                               syntax as AFD, except that FUI
                                               ADD accepts no 'prolog text'
GET          fn ft <filelist> <(options>       Order the specified file or
             PROLOGtext xxxx                   -> Specify a 'prolog text' to be
                                                  inserted on top of the file
GIVE         fn ft <filelist> <TO> user        Sends a file to someone else
INDex       <filelist>                         Same as GET xxxx FILELIST
                                               (default is LISTSERV FILELIST)
PW           function                          Define/change a "personal
                                               password" for protecting AFD/FUI
                                               subcriptions, authenticating PUT
                                               commands, and so on
             ADD firstpw                       -> Define a password for the
                                                  first time
             CHange newpw <PW=oldpw>           -> Change password
             RESET                             -> Reset (delete) password
SENDme                                         Same as GET

Other (advanced) commands

DATAbase     function                          Access LISTSERV database:
             Search DD=ddname <ECHO=NO>        -> Perform database search
                                                  (see INFO DATABASE for more
                                                   information on this)
             List                              -> Get a list of databases
                                                  available from that server
             REFRESH dbname                    -> Refresh database index, if
                                                  suitably privileged
DBase                                          Same as DATABASE
DISTribute   <type> <source> <dest> <options>  Distribute a file or a mail
                                               message to a list of users (see
                                               INFO DIST for more details on
                                               the syntax)
             MAIL                              -> Data is a mail message, and
                                                  recipients are defined
                                                  by '<dest>'
             FILE                              -> Data is not mail, recipients
                                                  are defined by '<dest>'
             RFC822                            -> Data is mail and recipients
                                                  are defined by the RFC822
                                                  'To:'/'cc:' fields
             DD=ddname                         -> Name of DDname holding the
                                                  data to distribute (default:
             <TO> user1 <user2 <...>>          -> List of recipients
             <TO> DD=ddname                    -> One recipient per line
             Options for the general user:
             ACK=NOne/MAIL/MSG                 -> Acknowledgement level
                                                  (default: ACK=NONE)
             CANON=YES                         -> 'TO' list in 'canonical' form
                                                  (uid1 host1 uid2 host2...)
             DEBUG=YES                         -> Do not actually perform the
                                                  distribution; returns debug
                                                  path information
             INFORM=MAIL                       -> Send file delivery message to
                                                  recipients via mail
             TRACE=YES                         -> Same as DEBUG=YES, but file
                                                  is actually distributed
             Options requiring privileges:
             FROM=user                         -> File originator
             FROM=DD=ddname                    -> One line: 'address name'
FOR          user command                      Execute a command on behalf of
                                               another user (for node
SERVE        user                              Restore service to a disabled
THANKs                                         Check the server is alive
UDD                                            Access the User Directory
                                               Database (there are 18 functions
                                               and many sub-functions, so the
                                               syntax is not given here)

File management commands (for file owners only)

AFD/FUI                                        Automatic File Distribution
             GET fn ft <filelist>              Get a list of people subscribed
                                               to a file you own
GET          fn FILELIST <(options>            Special options for filelists:
             CTL                               -> Return filelist in a format
                                                  suitable for editing and
                                                  storing back
             NOLock                            -> Don't lock filelist (use in
                                                  conjunction with CTL)
PUT          fn ft <filelist <NODIST>>         Update a file you own
             <CKDATE=NO>                       -> Accept request even if
                                                  current version of the file
                                                  is more recent than the
                                                  version you sent
             <DATE=yymmddhhmmss>               -> Set file date/time
             <PW=password>                     -> Supply your password for
                                                  command authentication
             <RECFM=F <LRECL=nnn>>             -> Select fixed-format file (not
                                                  to be used for text files)
             <REPLY-TO=user>                   -> Send reply to another user
             <REPLY-TO=NONE>                   -> Don't send any reply
             <REPLY-VIA=MSG>                   -> Request reply via interactive
                                                  messages, not mail
             <"parameters">                    -> Special parameters passed to
                                                  FAVE routine, if any
             Standard parameters supported for
             all files:
             TITLE=file title                  -> Change file "title" in
                                                  filelist entry
REFRESH      filelist <(options>               Refresh a filelist you own
             NOFLAG                            -> Don't flag files which have
                                                  changed since last time as
                                                  updated (for AFD/FUI)
UNLOCK       fn FILELIST                       Unlock filelist after a GET with
                                               the CTL option if you decide not
                                               to update it after all

List management functions

Commands that support the QUIET keyword are marked (*)
ADD(*)       listname user <full_name>         Add a user to one of your lists,
                                               or update his name
             listname DD=ddname                -> Add multiple users, one
                                                  address/name pair per line
             listname DD=ddname IMPORT <PRELOAD>
                                               -> Bulk add multiple users, one
                                                  address/name pair per line
ADDHere(*)                                     Same as ADD, but never forwards
                                               the request to a possibly closer
CHANGE(*)    listname|* oldaddr|pattern newaddr|*@newhost
                                               Change a subscriber's address
                                               (List owner's version)
DELete(*)    listname user <(options>          Remove a user from one of your
                                               lists, or from all local lists
             listname DD=ddname <BRIEF>        Bulk delete multiple users, one
                                               address/name pair per line
                                               if listname is '*'
             GLobal                            -> Forward request to all peers
             LOCal                             -> Don't try to forward request
                                                  to closest peer if not found
             TEST                              -> Do not actually perform any
                                                  deletion (useful to test
                                                  wildcard patterns)
EXPLODE      listname <(options>               Examine list and suggest better
                                               placement of recipients,
                                               returning a ready-to-submit MOVE
             BESTpeers n                       -> Suggest the N best possible
                                                  peers to add
             Detailed                          -> More detailed analysis
             FOR node                          -> Perform analysis as though
                                                  local node were 'nodeid'
             PREFer node                       -> Preferred peer in case of
                                                  tie (equidistant peers)
             SERVice                           -> Check service areas are
             With(node1 <node2 <...>>>)        -> Perform analysis as though
                                                  specified nodes ran a peer
             WITHOut(node1 <node2 <...>>>)     -> Opposite effect
FREE         listname <(options>               Release a held list
             GLobal                            -> Forward request to all peers
GET          listname <(options>               Get a copy of a list in a form
                                               suitable for editing and storing
                                               list and lock it
             GLobal                            -> Forward request to all peers
             HEADer                            -> Send just the header; on the
                                                  way back, only the header
                                                  will be updated
             NOLock                            -> Do not lock the list
             OLD                               -> Recover the "old" copy of the
                                                  list (before the last PUT)
HOLD         listname <(options>               Hold a list, preventing new
                                               postings from being processed
                                               until a FREE command is sent
             GLobal                            -> Forward request to all peers
MOVE(*)      listname user <TO> node           Move a subscriber to another
             listname DD=ddname                -> Move several subscribers to
                                                  various peers
PUT          listname LIST                     Update a list header from the 
                                               file returned by a GET command
PUTALL       listname LIST                     Similar to PUT but lets you 
                                               store the entire list, header
                                               and subscribers together
Query        listname <WITH options> FOR user  Query the subscription options
                                               of another user (wildcards are
             *        <WITH options> FOR user  Searches all the lists you own
SET(*)       listname options <FOR user>       Alter the subscription options
             *                                 of another user or set of users
                                               (when using wildcards)
             Additional options for list owners:
             NORENEW/RENEW                     -> Waive subscription
                                                  confirmation for this user
             NOPOST/POST                       -> Prevent user from posting to
             EDITor/NOEDITor                   -> User may post without going
                                                  through moderator
             REView/NOREView                   -> Postings from user go to list
                                                  owner or moderator even if
                                                  user is allowed to post
STats        listname (RESET                   Resets statistics for the list
UNLOCK       listname                          Unlock a list after a GET, if
                                               you decide not to update it
                                               after all
CMS          command_text                      Issue a CMS command and get the
                                               last 20 lines of response sent
                                               back to you, the rest being
                                               available from the console log
CP           command_text                      Issue a CP command and get up to
                                               8k of response data sent to you
                                               (the rest is lost)
DATAbase     function                          Control operation of databases:
             DISAble                           -> Disable interactive database
                                                  access, without shutting down
                                                  existing sessions
             ENAble                            -> Re-enable interactive access
             SHUTDOWN                          -> Shut down all interactive
                                                  database sessions, and
                                                  disable interactive access
NSTALL      function                          Software update procedure:
             CLEANUP shipment                  -> Remove an installed shipment
                                                  from the log
             CLEANUP BEFORE dd mmm yy          -> Remove all shipments
                                                  installed before that date
             PASSWORD shipment PW=instpw       -> Confirm installation of a
                                                  shipment, when requested by
             RELOAD shipment                   -> Attempt to reload a shipment
                                                  which failed due to a disk
                                                  full condition
             STATus                            -> Get a list of installed
NODESGEN     <WTONLY>                          Regenerate all LISTSERV network
                                               tables, or just compile the
                                               links weight file (debugging
OFFLINE                                        Suspend processing of reader
                                               files and disable the GET
ONLINE                                         Cancel OFFLINE condition
PUT          listname LIST                     Create a new list
PUTC         fn ft <fm|cuu|dirid>              Update a CMS file on one of
             <RECFM=F LRECL=nnn>               LISTSERV's R/W minidisks; note
                                               that this is similar to SENDFILE
                                               + RECEIVE or LINK + COPYFILE and
                                               should NOT be used to update
                                               file-server files
PWC          function                          Password file management:
             ADD    user newpw                 -> Define a password for the
                                                  specified user
             DELete user                       -> Delete password for that user
             Query  user                       -> Query the password of the
                                                  specified user
REGister     name|OFF FOR user                 Set a user's SIGNUP FILE entry
SENDFile     fn ft <fm|cuu|dirid>              Request the server to send you a
                                               file from one of its disks
SERVE        user OFF                          Permanently suspend access from
                                               an abusive user or gateway
                                               (restore with 'SERVE user')
SF                                             Same as SENDFILE
SHOW         BENCHmarks                        -> CPU/disk/paging benchmarks
             EXECLoad                          -> Statistics about EXECLOADed
                                                  REXX files
             LSVFILER                          -> Statistics about LSVFILER
                                                  file cache
             PREXX                             -> Statistics about PREXX
                                                  functions usage
             STORage                           -> Information about available
                                                  disk space and virtual
SHUTDOWN     <REBOOT|REIPL>                    Stop or reboot the server (the
                                               two options are synonyms)
STOP                                           Same as SHUTDOWN
Note: some debugging commands and options have been omitted.

Syntax of parameters


1 to 8 characters from the following set: A-Z 0-9 $#@+-_:


Netdata, Card, Disk, Punch, LPunch, UUencode, XXencode, VMSdump, MIME/text, MIME/Appl, Mail


same syntax as 'filelist'


same syntax as 'filelist'


firstname <middle_initial> surname (*not* your e-mail address)


name of an existing list


BITNET nodeid or Internet hostname of a BITNET machine which has taken care of supplying a ':internet.' tag in its BITEARN NODES entry


1 to 8 characters from the set: A-Z 0-9 $#@_-?!|%


Any valid Internet address not longer than 80 characters; if omitted, the 'hostname' part defaults to that of the command originator