Copyright (c) 2000 Sun Microsystems, Inc. All Rights Reserved.
Copyright 1989 AT&T
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
/usr/sbin/wall [-a] [-g grpname] [filename]
wall reads its standard input until an end-of-file. It then sends this message to all currently logged-in users preceded by:
Broadcast Message from .\|.\|.
If filename is given, then the message is read in from that file. Normally, pseudo-terminals that do not correspond to rlogin sessions are ignored. Thus, when using a window system, the message appears only on the console window. However, -a will send the message even to such pseudo-terminals.
It is used to warn all users, typically prior to shutting down the system.
The sender must be superuser to override any protections the users may have invoked See mesg(1).
wall runs setgid() to the group ID tty, in order to have write permissions on other user's terminals. See setuid(2).
wall will detect non-printable characters before sending them to the user's terminal. Control characters will appear as a " ^ " followed by the appropriate ASCII character; characters with the high-order bit set will appear in "meta" notation. For example, `\e003' is displayed as `^C' and `\e372' as `M-z'.
The following options are supported: -a
Broadcast message to the console and pseudo-terminals.
Broadcast to the users in a specified group only, per the group database (see group(4)).
If the LC_* variables (LC_CTYPE, LC_TIME, LC_COLLATE, LC_NUMERIC, and LC_MONETARY) are not set in the environment, the operational behavior of wall for each corresponding locale category is determined by the value of the LANG environment variable. See environ(5). If LC_ALL is set, its contents are used to override both the LANG and the other LC_* variables. If none of the above variables are set in the environment, the "C" (U.S. style) locale determines how wall behaves.
mesg(1), write(1), setuid(2), attributes(5), environ(5)
wall displays ``Cannot send to \|.\|.\|.'' when the open on a user's tty file fails.