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

FreeBSD Manual Pages

  
 
  

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

NAME
     write - write to another user

SYNOPSIS
     write [-ctynsprfSv] [ user [ tty ] ]
     jot [-ltynsprfSv] [ user [ tty ] ]
     tel [-clynsprfSv] user [ tty ] [message...]

DESCRIPTION
     Note:  This  is  "Orville	write", an enhanced version of the standard Unix
     write program.

     Write copies lines from your terminal to that of another user.  When  first
     called, it sends the message:

	  Message from your-logname your-tty ...

     The  recipient  of the message should write back at this point.  Communica-
     tion continues until an end of file is read from the terminal or an  inter-
     rupt  is  sent.   At  that  point, write writes "EOF (your-logname)" on the
     other terminal and exits.

     The following protocol is strongly suggested  for	using  write:  when  you
     first  write  to  another	user,  wait  for him or her to write back before
     starting to type your message.  Each party should end each message  with  a
     distinctive  signal  (o  for ``over'' is conventional), indicating that the
     other may reply; oo for ``over and out'' is suggested when conversation  is
     to be terminated.	Avoid typing when it is the other person's turn, as your
     text will get all garbled with theirs.  Anyway, it's rude.

     The jot command is a variation of write which normally sends each character
     to  the  other  user  as you type it instead of waiting for you to finish a
     line before sending anything as write does.

     The tel command sends one line ``telegrams'' and then  immediately  discon-
     nects.   The message may be given on the command lines (in which case it is
     usually best to quote it).  If you don't put a message on the command line,
     you will be prompted for it.  This is usually the preferable way to  invoke
     tel.

     All  three  commands  are	actually the same program, and share much of the
     same behavior.

     Permission to write may be denied or granted by use of the mesg(1) command.
     Your write permissions upon login are installation dependent.  If you write
     a person who has permissions on, but is currently writing someone else, you
     will be warned of the fact and be given a chance to cancel your  write  re-
     quest before interupting the other conversation.  If you write a person who
     is running a command under amin(1) you will be warned similarly.

     You  can  always  send messages to people who are currently writing to you,
     even if there message permissions are off.  If you have sent a person a tel
     message, then that person can write or telegram to you for the next 4  min-
     utes,  even if your message permissions are off.  This means that you won't
     be sitting around wondering why someone won't reply,  just  because  you've
     forgotten	to  turn  your	permissions on.  It also means that if you don't
     want someone to be able to talk to you, then you shouldn't  talk  to  them.
     Root may write anyone.

     If  you  invoke the write or jot command with no user name, they will write
     to whatever user is currently writing you.  If no one is  writing	you,  an
     error message is printed.

     If  you  invoke the write, jot, or tel command with the user name '.', they
     will write again to whoever you wrote to last.  If you haven't  written  to
     anyone  in  this login session, an error message is printed.  This is espe-
     cially useful when you are exchanging a series of messages back  and  forth
     with tel.

     If you want to write to a user who is logged in more than once, the tty ar-
     gument  may be used to indicate the appropriate terminal.	If the tty argu-
     ment is not given, the terminal from which you are being  written	will  be
     written  to, if there is one.  If not, one of the lines you have write per-
     mission to will be chosen.  If the tty argument is given, the user name can
     be given as "-", in which case it will write to whomever is on that tty, if
     anyone is.

     On some systems there may be users designated as ``helpers''.  If your sys-
     tem has helpers, then doing ``write help'' will write to some helper who is
     not busy.	If more than one helper is available, one is selected at  random
     to  distribute the workload.  Helpers designate themselves with the mesg(1)
     command.  They are considered busy if they are writing someone else, or  if
     they are running a command under the amin(1) program.

     If  the  character  ! , | , or & is found at the beginning of a line, write
     calls the shell to execute the rest of the line as a unix command.  If  the
     command  began with a ! the output of the command will be sent only to your
     terminal.	If it began with a |, output will be sent only to the other per-
     son's terminal.  If it began with a & each of you will recieve  a	copy  of
     the  output.  Note that write expands all strange control characters before
     sending them to the other person's terminal, but does not do so for charac-
     ters echoed back to your terminal.

     Write provides several command line options.  Actually, the only difference
     between write, jot, and tel is what default values they have for these  op-
     tions:

     -c     Send each character as it is typed.  Actually, it will not begin do-
	    ing so until after the other party has replied.  Also, if you type a
	    line  starting  with a ")" then the rest of the current line will be
	    held until you hit return and the sent (minus the ")").   When  this
	    option  used,  typing  a control-R will reprint the text of the line
	    you are currently typing, and control-W will erase the last word you
	    typed, even if your unix system doesn't usually support  these.   In
	    the jot command this is the default.

     -l     Send no characters until a full line has been entered.  In the write
	    command this is the default.

     -n     During  the duration of this conversation, temporarily turn off your
	    message permissions, so as not to allow people other than the person
	    being writen to write you.

     -y     During the duration of this conversation, temporarily turn	on  your
	    message  permissions, allowing other people to write you after warn-
	    ing them that you are writing someone else.

     -p     Postpone the receipt of telegrams during the duration of the conver-
	    sation.  All telegram received during the conversation will be saved
	    in your .lastmesg file, and will be displayed when you are finished.
	    The huh(1) command can be used in a shell escape to check saved mes-
	    sages without leaving write.

     -s     During the duration of this conversation, leave your  write  permis-
	    sions unchanged.  This normally the default.

     -r     This  causes  write  to  prompt for the root passwd.  If it is given
	    correctly, you will be able to write anyone, no matter how his  mes-
	    sage  permissions  are  set, amd you can override his preference for
	    write or tel.

     -f     Disallow piping input through write and  disable  the  '&'	and  '|'
	    shell  escapes.   This  is mostly meant to be used on 'options' com-
	    mands in the orville.conf file.  It has been mostly obsoleted by the
	    'pipes' configuration command.

     -t     Sends a one line message (called a telegram)  and  then  disconnects
	    immediately.   The	text  of the message may be given on the command
	    line, or, if it isn't, you will be prompted for  it.   Though  write
	    will attempt to blank out messages given on the command line so they
	    cannot  be seen by users running w(1) or ps(1), this will not always
	    work, so secret messages should not be placed on the  command  line.
	    This is the default in the tel command.

     -S     Normally if you send a telegram to someone who has indicated a pref-
	    erence  for  writes, you get asked if you want to switch to writing,
	    and vice versa.  The -S flag  suppresses  this  question,  and  just
	    makes it quietly fail (unless you are root, in which case it quietly
	    succeeds).

     -v     print the version number.

     The  options  selected by the writer may in some cases be overridden by the
     recipient.  You can set your preferences for writes versus  telegrams,  and
     for  line	mode versus character mode with the mesg(1) command.  If the re-
     cipient has set write/telegram preferences, you will be asked if  you  want
     to  use the other if you write him the wrong way.	If you invoke Write with
     a -S flag, then you will not be asked if you want to switch.  Only root can
     actually override the recipient's preferences.  For regular users,  if  you
     decline to switch, the command fails.

     If the recipient has set character/line mode preferences, a message will be
     printed and you will be forced into his or her prefered mode.

CONFIGURATION
     The  orville.conf file contains configuration information for Orville write
     and the associated utilities.  Lines starting with '#' and blank lines  are
     ignored.  Other lines contain the commands listed below:

     answertel <seconds>
	       Normally you can send telegrams to a person for four minutes (240
	       seconds)  after	they  sent you a telegram, even if their message
	       permissions are off.  This command can be used  to  set	size  of
	       that window to other values.

     disconnect [y|n]
	       If  disconnect  is enabled the 'mesg d' and 'mesg N' commands can
	       be used by the writee to disconnect  everyone  currently  writing
	       them.  (See mesg(1)).  It is enabled by default.

     exceptions [y|n]
	       If  exceptions  are enabled the 'mesg ye' and 'mesg ne' commandsa
	       can be used to limit which particular users can and cannot  write
	       you (See mesg(1)).  It is enabled by default.

     fromhost [y|n]
	       If  this  flag is set, then message announcement banners will in-
	       clude the hostname of the sender's machine  (and  the  reciever's
	       since write does not allow interhost communications).  It is dis-
	       abled by default.

     helperlist <path>
	       If  this flag is set, then only people whose logins appear in the
	       given file may be helpers.  Otherwise, anyone may be.  It is dis-
	       abled by default.

     helpername <name>
	       By default you get help by doing 'write help'.  If  you	want  to
	       use  some  keyword  other than 'help', use this command to define
	       it.

     helpers [y|n]
	       Can people designate themselves to be helpers, and should  'write
	       help' work?  By default, no.

     log <path>What file should logging be done in?  If not defined, or if it is
	       defined	and  the  file	does  not exist, then no logging will be
	       done.

     loglevel <num>
	       How much logging should be done?  Level 0 means	none.	Level  1
	       means only log help requests (with information about whether they
	       succeeded  or not).  Level 2 means logging a one-line description
	       of each write connection made.  Of course, no logging is done  if
	       'log'  is not defined or does not exist.  No content of any write
	       conversation is ever logged.  The default is 1.

     nohelp <path>
	       If someone does 'write help', but no helpers are found, this file
	       is displayed.  Normally it has information on other places to get
	       help.  If not defined, nothing is printed.

     pipes [y|n]
	       If turned off, this disallows piping data through write,  so  you
	       can't  do escapes.  This may be necessary if many users are using
	       write to annoy other users by sending large chunks of  data.   It
	       defaults on.

     novicehelp <path>
	       If  the	environment  variable  NOVICE is defined, then print the
	       contents of this file before  running  write.   If  not	defined,
	       nothing is printed.

     options <command-name> -<flags>...
	       Set  default  options  for  different links to the write program.
	       For example, if you have the line 'options jot -c' and you make a
	       link to the write program named 'jot', then jot will  default  to
	       character  mode	instead  of  line mode.  If command-name is '*',
	       then all links (even ones created by users) get that option.

     wrthist <path>
	       This is the full pathname of the 'wrthist' file	which  maintains
	       information  about  user's  recent messages.  It is used to limit
	       telegram flooding attacks, and allow replies to telegrams  during
	       the  four  minute window.  By default it is in the same directory
	       as the

     wrttmp <path>
	       This is the full pathname of the 'wrttmp'  file	which  maintains
	       information  about user's current state.  By default it is in the
	       same directory as the

AUTHOR
     Jan Wolter

SEE ALSO
     mail(1), mesg(1), who(1), huh(1), finger(1), amin(1), helpers(1).

7th Edition			  Jan 20, 2000				WRITE(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=write&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help