Move everything from /var/adm to /var/log
[unleashed.git] / share / man / man1 / write.1
blobca94696beab96e0a195abf1cf590e399bde130fb
1 .\"
2 .\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for
3 .\" permission to reproduce portions of its copyrighted documentation.
4 .\" Original documentation from The Open Group can be obtained online at
5 .\" http://www.opengroup.org/bookstore/.
6 .\"
7 .\" The Institute of Electrical and Electronics Engineers and The Open
8 .\" Group, have given us permission to reprint portions of their
9 .\" documentation.
10 .\"
11 .\" In the following statement, the phrase ``this text'' refers to portions
12 .\" of the system documentation.
13 .\"
14 .\" Portions of this text are reprinted and reproduced in electronic form
15 .\" in the SunOS Reference Manual, from IEEE Std 1003.1, 2004 Edition,
16 .\" Standard for Information Technology -- Portable Operating System
17 .\" Interface (POSIX), The Open Group Base Specifications Issue 6,
18 .\" Copyright (C) 2001-2004 by the Institute of Electrical and Electronics
19 .\" Engineers, Inc and The Open Group.  In the event of any discrepancy
20 .\" between these versions and the original IEEE and The Open Group
21 .\" Standard, the original IEEE and The Open Group Standard is the referee
22 .\" document.  The original Standard can be obtained online at
23 .\" http://www.opengroup.org/unix/online.html.
24 .\"
25 .\" This notice shall appear on any product containing this material.
26 .\"
27 .\" The contents of this file are subject to the terms of the
28 .\" Common Development and Distribution License (the "License").
29 .\" You may not use this file except in compliance with the License.
30 .\"
31 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
32 .\" or http://www.opensolaris.org/os/licensing.
33 .\" See the License for the specific language governing permissions
34 .\" and limitations under the License.
35 .\"
36 .\" When distributing Covered Code, include this CDDL HEADER in each
37 .\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
38 .\" If applicable, add the following below this CDDL HEADER, with the
39 .\" fields enclosed by brackets "[]" replaced with your own identifying
40 .\" information: Portions Copyright [yyyy] [name of copyright owner]
41 .\"
42 .\"
43 .\" Copyright 1989 AT&T
44 .\" Portions Copyright (c) 1992, X/Open Company Limited  All Rights Reserved
45 .\" Copyright (c) 2000, Sun Microsystems, Inc.  All Rights Reserved
46 .\"
47 .TH WRITE 1 "Nov 3, 2000"
48 .SH NAME
49 write \- write to another user
50 .SH SYNOPSIS
51 .LP
52 .nf
53 \fBwrite\fR \fIuser\fR [\fIterminal\fR]
54 .fi
56 .SH DESCRIPTION
57 .sp
58 .LP
59 The \fBwrite\fR utility reads lines from the user's standard input and writes
60 them to the terminal of another user. When first invoked, it writes the
61 message:
62 .sp
63 .in +2
64 .nf
65 Message from \fIsender-login-id\fR (\fIsending-terminal\fR) [date]...
66 .fi
67 .in -2
68 .sp
70 .sp
71 .LP
72 to \fIuser\fR. When it has successfully completed the connection, the sender's
73 terminal will be alerted twice to indicate that what the sender is typing is
74 being written to the recipient's terminal.
75 .sp
76 .LP
77 If the recipient wants to reply, this can be accomplished by typing
78 .sp
79 .in +2
80 .nf
81 write \fIsender-login-id\fR [\fIsending-terminal\fR]
82 .fi
83 .in -2
84 .sp
86 .sp
87 .LP
88 upon receipt of the initial message. Whenever a line of input as delimited by a
89 \fBNL\fR, \fBEOF\fR, or \fBEOL\fR special character is accumulated while in
90 canonical input mode, the accumulated data will be written on the other user's
91 terminal. Characters are processed as follows:
92 .RS +4
93 .TP
94 .ie t \(bu
95 .el o
96 Typing the alert character will write the alert character to the recipient's
97 terminal.
98 .RE
99 .RS +4
101 .ie t \(bu
102 .el o
103 Typing the erase and kill characters will affect the sender's terminal in the
104 manner described by the \fBtermios\fR(3C) interface.
106 .RS +4
108 .ie t \(bu
109 .el o
110 Typing the interrupt or end-of-file characters will cause \fBwrite\fR to write
111 an appropriate message (EOT\en in the C locale) to the recipient's terminal and
112 exit.
114 .RS +4
116 .ie t \(bu
117 .el o
118 Typing characters from \fBLC_CTYPE\fR classifications \fBprint\fR or
119 \fBspace\fR will cause those characters to be sent to the recipient's terminal.
121 .RS +4
123 .ie t \(bu
124 .el o
125 When and only when the \fBstty\fR \fBiexten\fR local mode is enabled,
126 additional special control characters and multi-byte or single-byte characters
127 are processed as printable characters if their wide character equivalents are
128 printable.
130 .RS +4
132 .ie t \(bu
133 .el o
134 Typing other non-printable characters will cause them to be written to the
135 recipient's terminal as follows: control characters will appear as a `\fB^\fR'
136 followed by the appropriate \fBASCII\fR character, and characters with the
137 high-order bit set will appear in "meta" notation. For example, `\fB\e003\fR\&'
138 is displayed as `\fB^C\fR' and `\fB\e372\fR\&' as `\fBM\(miz\fR'.
142 To write to a user who is logged in more than once, the \fIterminal\fR argument
143 can be used to indicate which terminal to write to. Otherwise, the recipient's
144 terminal is the first writable instance of the user found in
145 \fB/var/log/utmpx\fR, and the following informational message will be written
146 to the sender's standard output, indicating which terminal was chosen:
148 .in +2
150 \fIuser\fR is logged on more than one place.
151 You are connected to \fIterminal\fR.
152 Other locations are:\fIterminal\fR
154 .in -2
159 Permission to be a recipient of a \fBwrite\fR message can be denied or granted
160 by use of the \fBmesg\fR utility. However, a user's privilege may further
161 constrain the domain of accessibility of other users' terminals. The
162 \fBwrite\fR utility will fail when the user lacks the appropriate privileges to
163 perform the requested action.
166 If the character \fB!\fR is found at the beginning of a line, \fBwrite\fR calls
167 the shell to execute the rest of the line as a command.
170 \fBwrite\fR runs \fBsetgid()\fR (see \fBsetuid\fR(2)) to the group \fBID\fR
171 \fBtty\fR, in order to have write permissions on other users' terminals.
174 The following protocol is suggested for using \fBwrite\fR: when you first
175 \fBwrite\fR to another user, wait for them to \fBwrite\fR back before starting
176 to send. Each person should end a message with a distinctive signal (that is,
177 \fB(o)\fR for \fIover\fR) so that the other person knows when to reply. The
178 signal \fB(oo)\fR (for \fBover and out\fR) is suggested when conversation is to
179 be terminated.
180 .SH OPERANDS
183 The following operands are supported:
185 .ne 2
187 \fB\fIuser\fR\fR
189 .RS 12n
190 User (login) name of the person to whom the message will be written. This
191 operand must be of the form returned by the \fBwho\fR(1) utility.
195 .ne 2
197 \fB\fIterminal\fR\fR
199 .RS 12n
200 Terminal identification in the same format provided by the \fBwho\fR utility.
203 .SH ENVIRONMENT VARIABLES
206 See \fBenviron\fR(5) for descriptions of the following environment variables
207 that affect the execution of \fBwrite\fR: \fBLANG\fR, \fBLC_ALL\fR,
208 \fBLC_CTYPE\fR, \fBLC_MESSAGES\fR, and \fBNLSPATH\fR.
209 .SH EXIT STATUS
212 The following exit values are returned:
214 .ne 2
216 \fB\fB0\fR\fR
218 .RS 6n
219 Successful completion.
223 .ne 2
225 \fB\fB>0\fR\fR
227 .RS 6n
228 The addressed user is not logged on or the addressed user denies permission.
231 .SH FILES
233 .ne 2
235 \fB\fB/var/log/utmpx\fR\fR
237 .RS 18n
238 User and accounting information for \fBwrite\fR
242 .ne 2
244 \fB\fB/usr/bin/sh\fR\fR
246 .RS 18n
247 Bourne shell executable file
250 .SH ATTRIBUTES
253 See \fBattributes\fR(5) for descriptions of the following attributes:
258 box;
259 c | c
260 l | l .
261 ATTRIBUTE TYPE  ATTRIBUTE VALUE
263 CSI     Enabled
265 Interface Stability     Committed
267 Standard        See \fBstandards\fR(5).
270 .SH SEE ALSO
273 \fBmail\fR(1), \fBmesg\fR(1), \fBpr\fR(1), \fBsh\fR(1), \fBtalk\fR(1),
274 \fBwho\fR(1), \fBsetuid\fR(2), \fBtermios\fR(3C), \fBattributes\fR(5),
275 \fBenviron\fR(5), \fBstandards\fR(5)
276 .SH DIAGNOSTICS
278 .ne 2
280 \fB\fBuser is not logged on\fR\fR
282 .sp .6
283 .RS 4n
284 The person you are trying to \fBwrite\fR to is not logged on.
288 .ne 2
290 \fB\fBPermission denied\fR\fR
292 .sp .6
293 .RS 4n
294 The person you are trying to \fBwrite\fR to denies that permission (with
295 \fBmesg\fR).
299 .ne 2
301 \fB\fBWarning: cannot respond, set mesg\fR\fB-y\fR\fR
303 .sp .6
304 .RS 4n
305 Your terminal is set to \fBmesg\fR \fBn\fR and the recipient cannot respond to
306 you.
310 .ne 2
312 \fB\fBCan no longer write to user\fR\fR
314 .sp .6
315 .RS 4n
316 The recipient has denied permission (\fBmesg n\fR) after you had started
317 writing.