xref: /openbsd/usr.bin/write/write.1 (revision 9897ed79)
1.\"	$OpenBSD: write.1,v 1.17 2014/06/04 06:07:32 jmc Exp $
2.\"
3.\" Copyright (c) 1989, 1993
4.\"	The Regents of the University of California.  All rights reserved.
5.\"
6.\" This code is derived from software contributed to Berkeley by
7.\" Jef Poskanzer and Craig Leres of the Lawrence Berkeley Laboratory.
8.\"
9.\" Redistribution and use in source and binary forms, with or without
10.\" modification, are permitted provided that the following conditions
11.\" are met:
12.\" 1. Redistributions of source code must retain the above copyright
13.\"    notice, this list of conditions and the following disclaimer.
14.\" 2. Redistributions in binary form must reproduce the above copyright
15.\"    notice, this list of conditions and the following disclaimer in the
16.\"    documentation and/or other materials provided with the distribution.
17.\" 3. Neither the name of the University nor the names of its contributors
18.\"    may be used to endorse or promote products derived from this software
19.\"    without specific prior written permission.
20.\"
21.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
22.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
25.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31.\" SUCH DAMAGE.
32.\"
33.\"     from: @(#)write.1	8.1 (Berkeley) 6/6/93
34.\"
35.Dd $Mdocdate: June 4 2014 $
36.Dt WRITE 1
37.Os
38.Sh NAME
39.Nm write
40.Nd send a message to another user
41.Sh SYNOPSIS
42.Nm write
43.Ar user
44.Op Ar ttyname
45.Sh DESCRIPTION
46.Nm
47allows you to communicate with other users, by copying lines from
48your terminal to theirs.
49.Pp
50When you run the
51.Nm
52command, the user you are writing to gets a message of the form:
53.Pp
54.Dl Message from yourname@yourhost on yourtty at hh:mm ...
55.Pp
56Any further lines you enter will be copied to the specified user's
57terminal.
58If the other user wants to reply, they must run
59.Nm
60as well.
61.Pp
62When you are done, type an end-of-file or interrupt character.
63The other user will see the message
64.Dq EOF
65indicating that the conversation is over.
66.Pp
67You can prevent people (other than the superuser) from writing to you
68with the
69.Xr mesg 1
70command.
71Some commands, such as
72.Xr pr 1 ,
73disallow writing automatically, so that output isn't overwritten.
74.Pp
75If the user you want to write to is logged in on more than one terminal,
76you can specify which terminal to write to by specifying the terminal
77name as the second operand to the
78.Nm
79command.
80Alternatively, you can let
81.Nm
82select one of the terminals \- it will pick the one with the shortest
83idle time.
84This is so that if the user is logged in at work and also dialed up from
85home, the message will go to the right place.
86.Pp
87The traditional protocol for writing to someone is that the string
88.Dq \-o ,
89either at the end of a line or on a line by itself, means that it's the
90other person's turn to talk.
91The string
92.Dq oo
93means that the person believes the conversation to be
94over.
95.Sh ASYNCHRONOUS EVENTS
96.Bl -tag -width SIGINTXXX
97.It Dv SIGINT
98Terminate
99.Nm
100and exit with a zero status.
101.El
102.Sh EXIT STATUS
103The
104.Nm
105utility exits with one of the following values:
106.Pp
107.Bl -tag -width Ds -offset indent -compact
108.It 0
109Normal behavior.
110.It >0
111The specified user is either not logged in or not accepting messages.
112.El
113.Sh SEE ALSO
114.Xr mesg 1 ,
115.Xr talk 1 ,
116.Xr who 1
117.Sh STANDARDS
118The
119.Nm
120utility is compliant with the
121.St -p1003.1-2008
122specification.
123.Sh HISTORY
124A
125.Nm
126command appeared in
127.At v2 .
128.Sh BUGS
129The
130.Dq EOF
131message seen when the other
132.Nm
133terminates is indistinguishable from that party simply typing
134.Dq EOF
135to make you believe that any future messages did not come from them.
136Especially messages such as:
137.Pp
138.Dl "[1]    Done                   rm -rf *"
139