HP-UX Reference (11i v1 05/09) - 1 User Commands N-Z (vol 2)
s
shl(1) shl(1)
NAME
shl - shell layer manager
SYNOPSIS
shl
DESCRIPTION
shl provides a means for interacting with more than one shell from a single terminal by using shell layers.
A layer is a shell that is bound to a virtual device. The virtual device can be manipulated like an actual ter-
minal by using stty and ioctl() (see stty(1) and ioctl(2)). Each layer has its own process group ID.
The user controls these layers by using the commands described below.
The current layer is the layer that can receive input from the keyboard. Other layers attempting to read
from the keyboard are blocked. Output from multiple layers is multiplexed onto the terminal. To block the
output of a layer when it is not current, the
stty option loblk can be set within the layer.
The
stty character swtch (set to ˆZ
if NUL) is used to switch control to shl from a layer. shl has its
own prompt,
>>>, to distinguish it from a layer.
Definitions
A name is a sequence of characters delimited by a space, tab, or new-line character. Only the first eight
characters are significant. When provided as an argument to the create, login,or
name commands,
name cannot be of the form n or
(n), where n is a decimal number.
Commands
The following commands can be issued from the
shl prompt level. Any unique prefix is accepted.
create [-[name ] name [command ]]
Create a layer called name and make it the current layer. If no argument is given, a layer
is created with a name of the form (n), where n is the number of the next available slot in
an internal table. Future references to this layer can be made with or without the
parentheses. If name is followed by a command, that command is executed in the layer
instead of a shell. If
- is the first argument, a ‘‘login shell’’ is created in the layer. The
shell prompt variable PS1 is set to the name of the layer followed by a space.
login [ name ]
Create a layer called name and make it the current layer. If no argument is given, a layer
is created with a name of the form (n), where n is the number of the next available slot in
an internal table. Future references to this layer can be made with or without the
parentheses. name is a ‘‘login’’ type of layer in which the user receives a prompt for user
name and password.
name [oldname ] newname
Rename the layer oldname, calling it newname.Ifoldname is not specified, the current
layer name is changed.
! [command ] Invoke a sub-shell and execute command.Ifnocommand is given, a shell is executed
according to the
SHELL environment variable.
block name [name ...]
For each name, block the output of the corresponding layer when it is not the current layer.
This is equivalent to setting the sttyloblk option within the layer.
delete name [name ...]
For each name, delete the corresponding layer. All processes in the process group of the
layer are sent the SIGHUP signal (see signal(5)).
help (or ?) Print the syntax of the shl commands.
layers [-l][name ...]
For each name, list the layer name and its process group. The -l option produces a ps(1)-
like listing. If no arguments are given, information is presented for all existing layers.
resume [ name ]
Change the status of the layer referred to by name to that of current layer. If no argument
is given, the last existing current layer is changed.
Section 1−−922 Hewlett-Packard Company − 1 − HP-UX 11i Version 1: September 2005